Changes to how configurations are loaded.

Configuration checks working directory for a config.json file. If none exists (the working directory is somewhere it shouldn't be), Configuration looks at the absolute executable path for config.json.

Program can now be launched from another directory with a different config file for testing purposes.

boost_filesystem is now required for the project.