New: tmc/coloring.py, helper funcs and cls's for printing in color.

Specified four different colouring 'levels': Error, warning, info, success.

- Context manager class for printing multiple lines with a color
- String to colored string formatter funcs
- Direct print functions (to stdout or stderr, depending on level)

Changes to files with raw terminal escape sequeces modified to use new
functionality.

Coloring is done with the help of package "Colorama"
https://pypi.python.org/pypi/colorama (claims to be cross-platform)
cleanup: files.py to use new coloring functionality

Slight changes in behaviour too: if submission status is
"fail", all testcase results are printed with proper color context
instead of just the failing ones.

Also, added few prints to tell user what happened with submission (i.e
a title?)
fix: _to_json interprets "error" key incorrectly

"error" in JSON keys does not imply APIerror,
but instead it may contain a message caused by a
failure with C source code compilation (testrunner), for example.