Split classes into separate source files, add client for raw network, WIP