Improving staff auth middleware by using mount path in call to app.use

**Changelog:**

 1. Adds mount path to call to `app.use` so the `staffauth.js` middleware is
    only used on a path that begins with `/staff`.
 2. Simplified staff auth middleware by removing now unneeded logic to check
    for the `/staff` in `req.path`.
Adding conditional debug configuration based on NODE_ENV

**Changelog:**

  - Adds a flag to globally enable/disable the debug module in `server/debu.js`, making the `debug` module disabled by default.

  - Conditionally enables the debug module in app.js if the environment variable `NODE_ENV` returned from `app.get('env')` is equal to 'development'.
Update to documentation
Fixing typo getting projectcoordinators collection in signin.js
Removing unneeded CSS and consildating styles.css
Adding node-uuid module dependency to package.json.

This commit adds an additional node module dependency on the `node-uuid` module. The module is available on GitHub at:

    https://github.com/broofa/node-uuid

This module is used to generate version 1 or version 4 UUIDs as defined in RFC4122. It provides cryptographically strong random number generation on supporting platforms. So that we can create unique *and* random IDs. For example, this is useful to use for the team ids instead of MongoDB ObjectID objects. Because MongoDB ObjectIDs are roughly time-based and sequential, they are predictable. If we did use MongoDB ObjectIDs someone could take their own team id and use it to figure out team ids for other teams and join other teams without having been given the invite link for those teams.

The solution is to use version 4 UUIDs with the node-uuid module. You can also create time based IDs which are similar to the MongoDB ObjectIDs:

**Example**:

    // Generate a v1 (time-based) id
    uuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'

    // Generate a v4 (random) id
    uuid.v4(); // -> '110ec58a-a0f2-4ac4-8393-c866d813b8d1'

More Information on UUIDs:

    http://en.wikipedia.org/wiki/Universally_unique_identifier
Removing unneeded CSS link from default.html, fixing minor syntax errors
Modifying debug module so that callback is called even if disabled
Finishing work on server/debug.js

Made it so that the callback would be passed the formatted result string even if
the debug module is disabled. This is what I meant to do last commit. I also
added a lot of descriptive comments so its easy to tell exactly how this module
works.
Fixing the log prefixes for the middleware
Updating styles, making markup simpler. Updating volunteer views.
Adding new teams functionality, no longer using teams collection.

**Changes**:

 - The only field I had to add to the database was a single `team` field on the volunteer records. This is not only a lot simpler but it's actually *necessary* because of problems with writing to multiple documents atomically in MongoDB.

 - I will probably need to explain this more thouroughly, but we may need to redesign our current schema with this in mind. It shouldn't be very hard though and we can use the teams design as an example.

 - In `app.js` I added a `maxTeamSize` field to the call to the object passed to the call to `app.locals`. This means it can be accessed in all views as `maxTeamSize`; it will also be available as a property on the locals function itself accessible as `app.locals.maxTeamSize`. See
Adding CSS transition effects to navbar
Adding middleware to check for staff session
Removing uneeded CSS from views.
Separating team table into an include, adding routes and fixing bug in router
Removing navbar CSS transitions from collapsed links
Changing link in team table depending on staff