Use abstraction instead of using SDL dependencies.
Include _s wrappers for most standard function calls.
Remove symlinks and make codebase use common modules instead.
Rename files in order to prepare for extraction for publishing subsystems independently.