Move random color gen to functions file

Refactoring in prep of adding unit tests
Add unit-tests via XCTest.

Also updated old plist with new identifier.
Add failing -setSelectionColor tests.

To start tracking down some bugs (like #58) I am working on adding unit tests.