Make original story widget available

By specifying a ``data-version="0.1"`` attribute in the embed code, the
original version of the widget can be preserved.

Addresses #741, #831
Merge commit '6934a19d69ad6f77e5cf863d013bf56dfc426893' into 741-embed_widget
Update embed widget JavaScript

Support single story embeds, list embeds and story + list embeds.

Also support widget version option.

Addresses #741, #823
Handle widget versions in the same view

The likely part of the widget to change between versions is the
template, so it doesn't make sense to have separate view classes.

Instead, just implement the ``get_template_names()`` method to
also search for a version-specific widget template.

Addresses #741
Views that include lists of stories in widgets

Checkpoint commit for implementing views that list stories for
a particular taxonomy term and include stories for a particular
term along with a featured story.

Addresses #741
Merge branch 'develop' into 741-embed_widget
Handle paths without '/'s in embed widget

The embed widget JavaScript simply creates and iframe element and
sets its src attribute to the specified detail URL + 'widget/'.

To properly form and resolve URLs, we need to make sure that they
end in a '/'.

Addresses #741
Add views for stories of topics and tags

Widgets for lists of stories aggregated by different means
(organizations, places, projects, keywords (tags), topics) are created
by JavaScript that converts a URL for a page for that particular
taxonomy item into an iframe.

For instance the URL
http://floodlightproject.org/projects/finding-a-bite-food-access-in-the-childrens-corrid/
will be converted to a a widget listing stories for that project.

While views and URLs exist for taxonomy item pages for projects and
organization. They didn't yet exist for keywords (tags) and topics.

We've used the explore page as the means to list stories for topics,
places, projects and organizations, so I added a new view class
``ExplorerRedirectView`` which routes a slug-based URL to the explore
page with filters set. This provides the implementation for the
'/topics/<slug>/' path.

The explorer doesn't support keyword tags, so I made a simple view,
``StoryListView`` for listing stories for a given keyword tag.

Since StoryListView uses paging, I broke the paging styles into its own
less file, paging.less so and adjusted the class names slightly in the
search results templates so the pagination styles could be used in both
places.

Addresses #741
Add slug field to Place model

To make human-readable URLs for creating a place list widget, we
need to add slugs to the Place model.

Addresses #741
Clean up incorrect comment
List widget view for Places

Addresses #741
Document views for updated embed widgets

Move documentation of context out of the template and into the template
file to the ``get_context_data()`` declaration

In the process of documenting various view class methods, I cleaned
up the signature of the ``StoryListMixin.get_story_list()`` method:

* Remove the ``count`` argument as it seems more consistent to slice
  the returned queryset in the calling code.
* Make the ``view_kwargs`` argument default to ``self.kwargs``

Addresses #741
Update requirements for Django 1.5/Django CMS 2.4

Update the pip requirements file to reflect the required packages
for Django 1.5.* and Django CMS 2.4.*

Also, remove entries in the requirements file for packages that
are not directly required by this software.  They should get
installed automatically by pip when the explicitely named
dependencies are installed.

Remove the pip requirements file for Django 1.3 as we're no longer
supporting this version

Addresses #660
Merge branch 'develop' into 741-embed_widget
Update language handling for Django CMS 2.4

Django CMS >= 2.4 stops using ``cms.middleware.multilingual.MultilingualURLMiddleware``
in favor of ``django.middleware.locale.LocaleMiddleware`` so update
the middleware settings accordingly.  ``LocalMiddleWare`` also requires
identifying language-aware patterns using ``i18n_patterns``.
See http://docs.django-cms.org/en/latest/upgrade/2.4.html#removed-the-multilingualmiddleware

In order to use ``i18n_patterns`` with the storybase app URLs, include
them using ``include`` instead of importing and concatenating them to
``urlpatterns``.

Add ``cms.middleware.language.LanguageCookieMiddleware`` to middleware
See http://docs.django-cms.org/en/latest/upgrade/2.4.html#added-languagecookiemiddleware

Addresses #660
Remove simple_language_changer

This was deprecated in Django CMS 2.4

See http://docs.django-cms.org/en/latest/upgrade/2.4.html#pending-deprecations

Addresses #660
Switch to "new-style" url tag

Starting with Django 1.5, an unquoted url name like::

    {% url myview %}

won't work ("myview" is interpretted as a variable name)
and needs to be changed to::

    {% url "myview" %}

Addresses #660
Mock as_view when testing view class methods

Mock the ``as_view()`` method of a class-based view when
unit testing methods of a view class in order to properly
bind the view arguments and keyword arguments.

See http://tech.novapost.fr/django-unit-test-your-views-en.html
Use copy instead of django.utils.copycompat

``django.utils.copycompat`` will be deprecated in Django 1.6. We
don't need it for the version of Python we support. Remove it.

Addresses #660
s/django.conf.urls.defaults/django.conf.urls/

The module ``django.conf.urls.defaults`` will be deprecated in
Django 1.6.  Use ``django.conf.urls`` instead.

Addresses #660