Changed members to be private, added copy/move constructors and operators, adding lifecycle logging
call public methods on SystemInfo instead of accessing formerly public members.
added missing functionality for adding/deleting threads
added missing functionality for deleting thread
cleaned up code