Pluggable Annotation class

We're already using the Flask.g to store thread local variables, hooks, and the Annotation class itself can be a session variable too.

That way the class itself is pluggable so custom implementation can be used within our framework.
If no custom implementation is set, we set the default Annotation class.

Added a test case for it too.

The two additional +1 blank line inserts are for PEP8