Add basic engine skelaton

- New dependency on Boost program_options for cli arguments
- Basic engine initializes SDL2 and creates a window
- Added global.h to store global properties such as window dimensions