Update notification type creation

Update notification type creation to be compatible with django-notification
1.0.  It uses a ``create`` class method instead of a function inside the
``models`` module.

Addresses #571.
Update Django and Django CMS dependencies

Update dependencies to the current stable versions of Django (1.4.3) and
Django CMS (2.3.5) and update the dependencies required by those apps.

Save the old Django 1.3.1 and Django CMS 2.2 dependencies in a new file.
I'm going to try to not break backward compatibility with Django 1.3.1/
Django CMS 2.2, but I'd like to stay synced with the more recent framework/
CMS versions moving forward.

Addresses #35
Use Pillow instead of PIL

Getting JPEG support into PIL has been a pain and my development environment
(and the production environment) is using Pillow anyway.  We should just
depend on Pillow.
Merge branch 'develop' into 35-upgrade_to_django_1.4

Conflicts:
	REQUIREMENTS
Merge branch 'develop' into 35-upgrade_to_django_1.4
Update tests to pass with Django 1.4

Updated the selectors for tests dealing with the Django admin to match the
classes used in Django 1.4.  Also, made scenarios in story_admin.feature
able to be run individually as well as all-together.

Addresses #35
Move verbatim tag library to storybase app

As it provides general functionality, it seems more appropriate in the
central storybase app.

As the verbatim tag is included in Django 1.5, I added a guard that only
loads the backport if the distribution implementation isn't included.
Add admin user fixture

The story_templates.json fixture assumes that an admin user with pk=1 has
been created and uses this value for assigning the author field of the
template stories.  However, no such user exists when loading the fixture
in the unit tests.  Django 1.3.1 didn't seem to care about this, but
Django 1.4.3 displays an error message.  I created a fixture that creates
a single admin user to suppress the error.

Addresses #35
Add docs for upgrading Django/Django CMS

Addresses #35.
Use reverse_lazy for view's success_url

Now that we're supporting Django 1.4 we can use reverse_lazy to remove
the hard-coding of AccountNotificationView's success_url.  Fall back to
get_success_url for Django 1.3

Addresses #35
Merge branch 'develop' into 35-upgrade_to_django_1.4
Remove orange button from legal agreement view

The form validation (and eventual event triggering) is now triggered
when the checkboxes are checked rather than when the form is submitted.

Addresses #515.
Add numbers to the publish view steps

Add numbers to the publish view steps. I did this by making each
sub-view's element a ``li``.  I had to do a bit of CSS trickery to style
the ordered list numbers to match the headings.
http://www.456bereastreet.com/archive/201105/styling_ordered_list_numbers/
was very helpful with this.

I still need to test this under IE.

Addresses #515
Use LESS variables for publish step number styles

This is a tweak to the changes made in 2a8bcadaa92e1417c09d52e3053383b12115f325
that uses LESS variables to make the publish step numbers match the
header styles instead of hard-coding values.  This should make the code
more future proof.

I added a ``@styled-header-family`` variable to variables.less and also
use this variable to set the font in the ``.styled-header`` mixin in
base.less.

Addresses #515
Merge branch 'develop' into 515-publish_cleanup
Merge branch 'develop' into 515-publish_cleanup
Refactor publish step views

There was too much logic in the publish step templates and too much
logic related to toggling various elements based on publication status
in PublishView.  I broke most of the UI elements such as the publish
button, the to-do list and the view/publish buttons into their own views
and broke out common utility methods and initialization to a base view
class.

Addresses #515
Merge branch 'develop' into 35-upgrade_to_django_1.4
Tests for PublishButtonView and PublishTodoView

Addresses #515
Merge branch 'develop' into 515-publish_cleanup