feat(oauth): multiple strategies per account; changeable email
generate demo with grunt task
add grunt build control
add .idea folder to git ignore
fix(app): add .idea folder to gitignore
feat(gen): add automatic demo releases with grunt task

grunt demo when properly set up will generate and push a new version of fullstack demo. Also added grunt buildcontrol to the app to automate deployment to heroku.
feat(uibootstrap-modal): add basic modal service and template when using uibootstrap

Changes: (only if ui-bootstrap is selected)
- add `client/components/modal` folder
- modal folder contains service, markup template, and stylesheet
- modal service is intended to be extended, comes with `Modal.confirm.delete()` method
- admin and main page will both use `Modal.confirm.delete()`

Todo:
- review code for cleanliness and correctness
- possibly extend the modal service to include a basic alert class?
- write test for `Modal` service?
fix(app:api:user): Missing user response code

Changes:
- Send `404` response code when a user cannot be found

Closes #438
fix(openshift): fix issues with openshift deployment

app is now restarted after being created
openshift is used as the remote name
git push exceeding buffer size causing exec to fail
add openshift deployment to grunt buildcontrol
update docs for heroku and openshift deployment
Merge branch 'feature-demo'
Merge pull request #453 from kingcody/fix/api-user-response

fix(app:api:user): Missing user response code
update changelog
2.0.9
fix buildcontrol task for generator
don't remove readme from demo
fix(server): undefined domain env variable causing issues
fix buildcontrol running from wrong directory
update changelog