Preprocess assets as Django management command

Rather than directly invoke command-line Python (and Mako) from the
assets Rakefile, or call an external Python script, use a Django
management command to preprocess all asset template files.

An "asset template file" is defined as a static asset file with a
file extension indicating that it needs to be run through a template
engine prior to Sass/CoffeeScript compilation or packaging with other
assets. The preprocess_assets management command will look through
all of the files listed in the `STATICFILES_DIRS`, preprocessing each
as needed. Preprocessing strips off the special template file
extension, creating a new file in the process.

Currently, the only variable accessible in an asset template file is
the `THEME_NAME`, defined in the settings.
Add wrapper task to start LMS/CMS server

The LMS/CMS server startup depends on the :assets task, which needs
to receive :system and :env arguments. Since the existing server
startup tasks didn't take a :system argument, a new command called
:runserver is created that does take :system, :env, and :options
arguments. The old server startup tasks are adjusted to wrap the one
:runserver task that does all of the heavy lifting.
Wrapper tasks for :assets-dependent Jasmine tasks

The :browse_jasmine_<system> and :phantomjs_jasmine_<system> tasks
depend on the :assets task, which needs to receive both :system and
:env arguments. Therefore, new tasks (:browse_jasmine and
:phantomjs_jasmine) are created that do take :system and :env args.
The old :browse_jasmine_<system> and :phantomjs_jasmine_<system>
tasks now wrap the new tasks, passing in <system> as an argument
and 'jasmine' (for :env, since it's hardcoded to 'jasmine' in
django_for_jasmine()).
Change `task.invoke` to `Rake::Task.invoke`

Using `task()` reopens the definition of the task, and all we really
need to do is get a reference to the task itself to invoke it.