Add passportjs authentication support.

Initial commit providing passportjs (http://www.passportjs.org)
authentication middleware.  Provides a single option 'local'
that can be used for debugging.  It stores users locally in
the database with a password (using bcrypt for hash and salt).

Added passport-local and bcrypt as development dependencies
since the local strategy is only intended to be used in
dev/test mode.
Merge branch 'sprint1' into sprint2
Project based updates and refinements to layouts and view rendering.

This checkin contains some udpates to model saving logic, and seperation of conc
erns therein.  It also contains the addition of Twitter Bootstrap v3.0, and the
implementation of a header in said bootstrap fashion onto the layout view (serve
r side).  This allows us to have a constant nav bar that we can use and also it
serves the purpose of giving us a 'container' for our single page app to live in
side of (aka below this nav bar).  This checkin also introduces a few new files to deal with the show view as well as preliminary changes needed for a major overhaul of how we are doing our view rendering on the client side.  We are going to be switching to psudo-master views within the home view and a move away from URL's for the time being, so there are some changes related to that.

 enter the commit message for your changes. Lines starting
Updates on the URL's.

I changed the URL's hash to change upon link click going from the list view to the show view, and it updates itself using the ID of the item.  So it goes from /projects to /projects/:id.  So that follows convention now.  And to get back we re-instantiate the collection and filter through them.
Add OAuth2 support for login/auth

OAuth2 authentication has been added using PassportJS.
The 'oauth2' endpoint and passport strategy is intended
to be used for development and testing, but not production.
It provides an example of what an OAuth provider might do,
including storing keys and creating users.

The OAuth2 setup is intended to talk to a forked version
of oauth2orize available at:
https://github.com/Innovation-Toolkit/oauth2orize-midas-testserver
Added the ability for a user to create a task, once inside of a Project Show View.

There are also various refactorings here, as well as some minor changes to the way we are rendering things.  There still needs to be a larger overhaul of our instantiation system, but in the mean time I am experimenting with what uses less memory.  For now the pattern Joe and I discussed on the whiteboard seems to be working, but I have a feeling it won't be sustainable.  We will see though.  As for the other changes in here they are rather minor related to project show views and other areas related in order to get Tasks to be created and listed.
Merge branch 'sprint2' of github.com:Innovation-Toolkit/midas into sprint2
Removed URL for Task List from Router.

I removed the ability for a user to navigate to the URL for tasks individually from projects for now.  Typically that route would list all the tasks available in the system, but also in order to have restful routing we need to change a few things so for now we are just going to remove that route.
Add Nginx config file to proxy http

Nginx is useful for proxying http requests. Here's a default
config that works with sails running on port 1337,
includes the necessary hooks for making websockets work,
and gzips content to the client.
Merge branch 'sprint2' into devel