chore(boot): extract code splitting generator to boot/loader

This helps us be less verbose when loading modules dynamically.  Instead of
having to write things like this for each code-splitting point:

    require.ensure(["../app"], function(require) {
      finishLoading(require("../app"))
    })

We can now write it like this:

    loadModule['app'](finishLoading)

Closes #40
docs(README): fix LICENSE and Plan link
Merge branch 'boot-loader#40'