Re: handling unmanaged resources, you have 2 options:
1. Everything not declared is unmanaged. Deleting is done by a "deleted" attribute of some sort. The resource is declared as deleted.
2. Everything unmanaged is declared as unmanaged. The resource is declared as unmanaged and TF would ignore it.
Either of those would work without extra state.