Changes after review

1. Add unit tests for changing base color.
2. Make sure new properties are initialized in the constructor.