Dave, that looks ok.
How are you tying a handle to a particular drawing?
Right now I have a directory structure set up with binary files, .dwg and the dll so that all I have to do is is build and have it run a .scr and the app fires up. In production I will need a front end. So I have to move directories around which is OK for now.
Everything is in 1 .dwg file and only 1 layer. I do everything(visibility,isolating,editing,deleting,exploding assemblies, moving things,etc) by returning everything back by their handles.
I used to use xdata and lost everything when a dwg file got corrupted. This way I could rebuild a model in a fresh .dwg file if need be. In fact I all care about is having a black modelspace screen to paint pictures. No drafting allowed