use model class' query object

this allows custom query classes with extra filters on the model object to be used
Adds skeleton for pre- and post-processors.
use model class' query object only if it's present

sometimes it isn't present. the tests now pass.
use model class' query object in views as well

now the logic in `views._get_or_create` matches that in `search.QueryBuilder.create_query`
replace code to use model.query or session.query(model) with helpers.session_query function
Merge master and processors branches
Small bug fix
PEP8 fix
Refactoring calling pre-, post-processor functions
Tests for preprocessor functions
Fix in catching exceptoins
Merge pull request #133 from glyphobet/master

Use custom query classes on model objects
Records the range of issues that this branch fixes.
Cleans up test code.
Adds missing tests for helper functions.
Replaces two identical exceptions with a single one.
Fixes allow_patch_many example code.
Clears up preprocessing and postprocessing code and tests.
Adds documentation for preprocessing and postprocessing.
Removes extra newline.