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.

Add new testcase too: Test pluggable class