[refactor] Move error-related stuff into its own file and merge with color

`mars.c` is too big.  In ddmd, almost everything imports mars.d which then imports everything.

As a bonus we no longer need color.c/h, as most of it can be made internal.

@ibuclaw