Extended styling suppport

Thanks for updating the library for Android 5 support. I've added a few extra options to your version, for my own use really but thought you might like to merge them in.

* ColorStateList support for text colour
* Change text style (normal, bold, italic)
* Change text alpha

All defaults should be the same as before.
We should give the option to pass a single color (int) and we create the ColorStateList with it. It makes the API simple in case the user doesn't want to have a different colors for each staet