Add service container

The service container will allow us to easily manage extension services
and bootstrapping logic.
Fix syntax issues in executable
Add project dependencies
Add service container helper