Updated component.destroy to destroy at end of current event loop;
Added component.destroyImmediate with tests;
Closes #5;