Add `None` mark to module object

Applicable only when it fallbacks to the default value. This may output shown by
travis more informative. And in any case old code contained a bug.
Mark default value of default_module value
Also in another place, just in case
Check whether all values that should have mark attribute have it
Use init_context to initialize config context
Make error messages from context_has_marks and havemarks more verbose
Record docstring marks
Add MarkedDict.keydict attribute

Useful for preserving marked keys
Check whether values have marks recursively
Add marks where they were forgotten
Fix python-2.6 support

It was calling __setitem__ from copy.deepcopy on an unitialized dictionary.
Merge pull request #1019 from ZyX-I/workaround-1017

Keep marks around in powerline-lint