Establish a base for linking in NPM sources to be exposed

* Sort package.json packages
* Use absolute versions for npm packages... closes #321
* Change README.md to reflect moved/new packages
* Fix whitespace `function(` to `function (` from #331
* Using for express-minify for server side .js and .css minification ... applies to #330
* Create `./routesStatic.js` and move/create all static routes into it ... applies to #330
* Remove static copies which closes #330

Parallel change e.g. no new dependency updates such as *font-awesome* and *bootstrap*

Many thanks to @jerone, @Zren, and @cletusc for assistance in team biz for these issues.
Not entirely sure what max-age represents. I know it's a "max" but will the client update if the file changes before max-age ends?

If it doesn't, then the client is effectively locked into using that resource until it expires.

We should not be measuring how long it takes for us to change the file, but rather how long between a client first requesting the resource, and when it will update. Max-Age is then effectively how long it takes for our code to "roll out".

We can always lengthen the value, we cannot shorten it.