Change the way in which profiling is cancelled.

Iterating through the signal responses was an inelegant solution, and it
put the onus on the client developer to remember to return True from
their signal receiver function, which tripped me up a couple of times.

I've updated the ProfilerRecord model to add an explicit `cancel()`
method which can be called by the signal receiver function to cancel
the profile.
Change the way that global exclusions are applied.

Instead of a single IGNORE_STAFF setting, there is now setting called
REQUEST_PROFILER_GLOBAL_EXCLUDE_FUNC, which is a function that is
called on each request, and that can be used to exclude requests from
profiling. By default this is a lambda that return True, so all
requests are profiled.
Update README and bump version to 0.6.2