Remove symlinks and make codebase use common modules instead.
Rename files in order to prepare for extraction for publishing subsystems independently.
Use appropriate identifier for function that runs network thread.
Put input and video subsystems into their own directories.
Split the network events to the net directory to keep the app code implementation clean.