Let caller control side effects of session init.

Subclassing Base has side effects: it updates the SQLAlchemy metadata registry.
Do not add user_uid to session.

Put developer in control.
Inject raw request data in Flask application.
Add on_request hook to Flask application.

Common pattern will be to subclass for on_request & build_response.
Support more application exceptions.
Support Plan middleware with Plan.call.