at least it doesn't segfault
added color output
Merged branch 'color'