Issue/19 add colors

fixes #19 and #24

This duplicates pull #29 with the exception that this is written in Obj-C versus Swift.