Initial tests, view for builder header title

This is a checkpoint commit for a new view,
``storybase.builder.views.TitleView`` that will eventually be
used to show the title in the header of the builder.

Addresses #578
Merge branch 'develop' into 578-rework_story_information
Toggle editor display and save model in TitleView

In the Backbone view for editing the story title, toggle the
display of the title and the text input on blur and when the
Enter key is pressed and released.  Also set the title attribute
on the model to the new value of the input.

Automatically save the story model when its title attribute
changes.

Refactor the test code to be more DRY.

Addresses #578
Add character counter to TitleView

Addresses #578
Further refinement of header title editing

This is a checkpoint commit.

* Wire ``TitleView`` into AppView
* Logo as an <img> instead of as a background CSS property. See
  http://csswizardry.com/2011/08/more-logo-markup-tips/
* Separate logos for template selection view vs. story editing view
* Make title font in builder match the title font in viewer
* Give title editing input focus when title is clicked.
* Event handler that does saving of story in TitleView because
  signature of ``change:title`` event is different than that of
  ``Model.save()``.
* Hack to disable caching of LESS when using less.js on non-localhost
  hosts.

Addresses #578
Better cleanup of event bus event listeners

Use a single event bus in the tests. This avoids unneccessary object
initialization and also more closely matches what happens in the
real app.

This exposed the need for better event listener cleanup in some
of the views.  Luckily, we're already using the idiom of a
``close()`` method to do this.  Add close methods to a few of the
views and call them in the appropriate afterEach() function in
the tests.
Add a ``has-story`` class to the master view

When the user selects a template, ``AppView`` sets a ``has-story``
class on its element.

Right now, this is just used to toggle logo styles, but the
selecting template/editing story state seems like a significant
enough change that this class could be used to trigger other
style changes.

While ``ready:story`` seems like a more appropriate place to
set the class, we want to change the logo ASAP!

Addresses #578
Mock some models, libraries in JavaScript tests

``AppView`` does/triggers a bunch of stuff.  Now that the tests
are firing more events, we need to mock some libraries like
Modernizr and guiders to avoid errors.

Inside builder/views.js, check if the jQuery tooltipster plugin
exists and set it to a noop if it doesn't.  That way we can make
the plugin optional and not wrap a bunch of guards around calls
to the plugin.

Also remove the image toggling tests for ``TitleView``, in
anticipation of moving this functionality to a separate view.
Factor logo swapping logic into its own view

Addresses #578
Styles for title input and character counter

Addresses #578
Add wysihtml5 as argument to builder self-executing function

This should eliminate any globals accessed within the builder views
module and make it easier to some day migrate to an AMD-based
solution.
Inline editing of story byline in builder header

Add a ``BylineView`` to handle inline editing of the byline,
displayed in the header.

Refactor the ``TitleView`` implementation so the functionality
it has in common with ``BylineView`` is in a shared base class,
``InlineEditorView``.

Addresses #578
Toggle title/byline editor, even when unchanged

When the input loses focus or enter is pressed, hide the editor,
even if the value hasn't been changed.  This fixes a bug where
the editor was toggled only if the model's change event is
triggered.

Addresses #578
Tooltips for title/byline inputs

Add tooltips to title and byline inputs in the header that remind
the user which field they're editing and tell the user that they
can press Enter to save and Esc to cancel.

Addresses #578
Update the browser's location on initial save from editing title

When doing an initial edit of a story via the title or byline in
the header, be sure to make sure the browser's location updates
to contain the id of the story.

To do this, trigger a ``do:save:story`` event on the event bus instead of
calling ``this.model.save()`` if the story hasn't been saved
before.

The ``do:save:story`` event and the associated event handling seems
a bit dubious, but this is how we've been doing it.  Add a comment
that flags this pattern for review.

Addresses #578
Add tooltip to the title element, not the container

Addresses #578
Render container for byline, even when story isn't set

In the template selection step of the builder, have the Django
template write the markup for the byline.  This makes the
Backbone view logic much simpler.  In the template selection view,
the byline markup is hidden by CSS.

Addresses #578