Improved SystemManager implementation.

The system manager now manages a queue of shared_ptr Systems for automatic memory deallocation purposes.