[feature]Qiu: add environment object

environment object could return environment information.
[feature]Qiu: add sinon package in

will use sinon in node mocha unit testing
[feature]Qiu: db config according to environment

environment().db.connection could return the current development/test/production's db connection string
according to the process.env.NODE_ENV argument, by default it's set to development
[feature]Qiu: use database configuration while running app
[feature]Qiu: add grunt-env in project and fix testcase

because we could link to different db as per the environent,
so add grunt-env in and use env:development represent development environment.

some db connection string in testcases are static, already updated using environment()
[feature]Qiu: add grunt-seed in

grunt-seed could be used in import prepared data
[fix]Qiu: fix require('./database.js') issue

grunt-seeds and grunt-clean file loaded before setting up the process.env.NODE_ENV
and cache the object of `require('./database.js')` so that the app always use
development environment to do the database operations.

lazy load the `database.js` module in these two files
[feature]Qiu: use 'development', 'test', 'production' terms in expressjs

setup env:test before mocha test and karma test
Merge pull request #19 from twers/environment-db-configurable

Environment db configurable
Merge pull request #21 from twers/db-seed-and-clean

Db seed and clean
Qiu&Morlay[fix]: fix the server environment config
Merge pull request #22 from twers/fix-grunt-config

[fix]Qiu&Morlay: fix the server environment config
Merge branch 'development' into 21-manually-trigger-run