Make ProductSearchForm customisable.

Note: Please review before merging.

All forms in the oscar.dashboard.catalogue app are overridable via the
common get_classes pattern, apart from the ProductSearchForm which is
imported directly from oscar.dashboard.catalogue.forms.
I've grepped through the source code, but couldn't find any hints on
why that would be necessary. As ProductSearchForm is quite simple
(not a ModelForm, and just two fields) I deemed it a bug and updated the
code to allow customising like everywhere else.
The tests run through fine, and the sandbox site works as expected.
Adding transactions listing on order details, payment tab
Forgot to add the currency filter
Adding a config option to set a paginate_by for products
Changing OSCAR_PRODUCTS_PAGINATE_BY to OSCAR_PRODUCTS_PER_PAGE
Fix for <form> action attribute.

Old behavior is to default to action="." if no action is given. The dot
makes the browser submit to the URL specified, but drops any GET
parameters if the form is POSTed.
A common case of mixing POST and GET parameters is supplying ?_popup=1
to a popup. The view processes the form data in POST as usual, but then
might return a different HTTPResponse if 'popup' was supplied, e.g.
return Javascript to close the popup.

My fix drops specifying 'action' if none is given. This is okay in
HTML5 and HTML3, and defaults to the URL (including GET parameters).
It's required in HTML4, but as far as I know handled gracefully in
all browsers.
Prevent handling signals when loading fixtures
Expanded core class overriding example, added explanation on required changes to settings.py
ProductForm: fix bug when hiding related_products

The recent changes to the ProductUpdateView introduced a bug causing it
to break when the related_products field is hidden from the ProductForm.

This commit checks if the field is present before setting the queryset for
the related_products.
I also refactored the queryset out into a seperate function on
ProductForm to make it overridable.
Use BrowsableProductManager for related products

Was standard manager.
Fix messed up markup on registration page
Restrict django to version <1.5 until compatability branch is merged
Upgrade to WebTest==2.0

This found a few mark-up bugs where form tags used the single-element
form ("<form ... />") which prevented the fields being found by webtest.
Print contributing guidelines when installing in 'develop' mode

Hopefully this is useful and not annoying.
Add Twitter URL to message
Merge pull request #540 from tangentlabs/experiments/contributing-in-setup

Print contributing guidelines when installing in 'develop' mode
Update to more recent version of haystack
Fix issue with latest changes in haystack

A merge into haystack has resulted in an additional argument for
``index_queryset``, I updated the search index for Oscar's product
to fix the issue.
Clean up some minor issue with JSON
Add is_discounted field on ShippingMethod

shipping/models:ShippingMethod was missing the is_discounted attribute that
exists in the de-facto superclass in shipping/base:ShippingMethod.

Also added a few comments to clarify how they relate to each other, and
tests to check if is_discounted is present on various instances of
ShippingMethods.