Remove unused files

The following files are unreferenced and unused:

- lib/generate-init.js
  Looks like the last reference to this file was removed in 2012 in
  ff031ef330962e0639776b852db8809ea81907c8

- lib/app.build.js and optomist library
  The only references to them are the initial commit
  541af0bd473ffe154557b5f978ad25c2b1c4c38
  this moving of the file:
  16ad49aa670fa1207f873beb0069c5575be77485
  and this cleanup that says "I don't know what this file is for":
  2906bc78cf765e7b91fc00dc5de109265aa50d09

- lib/processbuild.js
  There are no references to processbuild.js in the current codebase. The last
  references to it are moving the file in Feb 2013:
  16ad49aa670fa1207f873beb0069c5575be77485
  and linting the file:
  ab90b7b2757dfeabe31473d18f92ce707dc88555
Refactor build system

OK, this is a huge commit. I have it broken down into smaller commits if that
would fit with the VC strategy better.

NOTE: This revises the API and breaks testing with the Gruntfile right now. Will
fix and squash commits, but want to get feedback first.

- The node module no longer writes directly to the file system, but instead
  exposes an output string in a callback. The new CLI outputs a file.
- Moves Grunt to a dev dependency and builds a custom Modernizr file
  in memory, without writing interstital steps to disk. This is safer, lighter,
  and gets rid of Grunt inception.
- All build system code is in lib/, and used node.js/common.js style module
  loading.
- All Modernizr code is in feature-detects/ and src/, and uses require.js style
  module loading.
- All files used only by tests are moved to test/
- Impliment a real CLI using npm's bin param.
- Adds consistant code comments.
- Revises and adds new docs to readme.md:
  - Adds usage docs
  - Removes cruft docs for other repositories
  - Adds contributing docs, moves test section inside of it

- Minor optimizations:
  - Switch build system to native V8 functions where possible
  - Improve r.js settings
  - Name exported functions to givenicer stack traces in case of error
  - Normalize code syntax and spacing
  - Renames files for maximum pattern following
  - Cleans up .gitignore
  - Fixes .editorconfig for markdown
  - Removes `test/` from conig-all.json. Doesn't have meaning for users /
    consumers anyways since it's a pretend directory we fake with r.js.
Revise the gruntfile to work with new build system

- No tasks use grunt watch, no docs mention it, so remove it
- Remove unneeded clean targets
- Remove unused meta config object
- Make jshint test test/api
- Refine jshint to work with tests and lib, remove uneeded config
  - curly: all of Modernizr's code uses {}, not needed
  - evil: No eval statements in Modernizr's source, not needed
  - laxcomma: Only existed in unit-caniuse.js, so fixed there and removed.
  - newcap: No class based issues in Modernizr, not needed.
  - smarttabs: Editorconfig enforces indent_style = space, so this rule is
    contrary to our other code normalization tool. Removed.
- Remove jshint node: true comments in lib and test because we're defining that
  in the gruntfile. NOTE: there are still a few files with jshint error
  suppression comments in them.
Improve test coverage for new build system