Added codes, automatic colors, tests.

Added ANSI codes dict. Also added AutoCodes class which dynamically
changes auto-prefixed mappings. In plain english this means the user may
use "{autored}Test{/autored}" and call set_light_background() or
set_dark_background(), and the text will be readable on the terminal in
both situations.

More tests for no_colors.