Added Disposable Object Class
added unit test and code implementation for disposable objects
Added a "wrapper" for COM objects in a "disposable object" construct. How to unit test this though?
added a wrapper object to handle a suspendable object.
Merge branch 'feature/DisposableObjects' into develop