grunt: preprocess index.html in build task

This removes the inactive <!-- @ifdef MOCK !> blocks from the build
result.
grunt: move copy config for mock files to main config

We will be reusing this copy config later when we produce a mock
build, e.g., a build that is hard-coded to use the Swift simulator.
grunt: copy all test JS files into mock build

While mock-env.js isn't needed for the E2E tests, we will need it for
the mock build.
grunt: add publish-gh-pages task (fixes #183)

This will make a mock build and proceed to commit it to the gh-pages
branch in the repository.
index: add note to top of page when using the mock version
grunt: better default commit message for gh-pages

We now include the short SHA-1 hash of the source code used to
generate the mock build.
readme: add link to mock build
grunt: define dummy gitinfo value

Without this, you get the following error when trying to run tasks
usemin tasks (such as 'grunt build'):

  Running "useminPrepare:html" (useminPrepare) task
  Warning: An error occurred while processing a template (Cannot read
  property 'local' of undefined). Use --force to continue.
Merge pull request #186 from mgeisler/publish-gh-pages

Publish mock build as a GitHub page