Changed IClient to better fit with design, made some communications packages, renamed ICommandable to IThreadContainer