DEV: Forward this_class in container traits.

Makes it possible to do things like List(This()) and have This()
correctly refer to the parent class.
DEV: Add ForwardDeclaredType and ForwardDeclaredInstance trait types.

These traits take advantage of the this_class attribute to resolve a
supplied name relative to the module in which the containing class was
defined.  You can hack this already by leveraging `__name__`, but this
implementation makes it a bit clearer what you're actually trying to do.
STY: Whitespace between class definitions.
BUG: Use hasattr '_resolve_classes' instead of isinstance(Instance).

Fixes a bug where Sequences of Type didn't have their klass correctly resolved.
Move forward-declaration tests to their own section of test_traitlets.
DEV: Support default_value in `ForwardDeclaredMixin`.
DEV: Convert a stray import_item -> self._resolve_string.
DOC: Clarify docstring for `ClassBasedTraitType`.
BUG/TEST: Fix typo in test name.
MAINT: Remove unncessary try/catch around import_item.

This was a relic of an earlier implementation that wasn't using
`import_item` directly.
Merge pull request #6892 from quantopian/recursive_traits

Better support for recursive/parameterized Traits.