Add support for coloured terminal output

Supports all platforms except Windows
Closes #10