Code cleanup + added a setColor() method

I cleaned up the code, wrote JavaDoc comments, and modified the code so the widget can be resized without the pointer hanging around in the old location.

I also added a setColor() method to initialize the pointer to a certain color. This way HoloColorPicker can be used to e.g. modify a color preference.

If you keep track of which apps are using HoloColorPicker: K-9 Mail is now among them; https://github.com/k9mail/k-9/commit/ffda5326121900b59642e5dd478b45663a5bf45c