Rework Gruntfile and app start to use differet config JSONs

- Separate logic for booting app into app-boot.js
- Create app-dev.js to boot app in development mode (data-source mock)
- Create app.js to boot app in e2e mode (no mocks)
- Add run:dev task for running in development mode (alias of run)
- Add run:e2e task for running in e2e mode
- Remove config.json.example and put example in config/README.md
- Move API version into config JSON
- Move rejectUnauthorized into config JSON
- Move logic for adding rejectUnauthorized request option to data-source-mixin.js
- Add better 404 handling logic to api and global app
- Update README