Refactoring

Added setBackgroundCompat to deal with the setBackground /
setBackgroundDrawable situation.
Error state and back to normal support.

Process button now also have an Error State, denoted by a negative
progress value. In error state, a specific text will be presented, and
the background of the button will also change.

In addition, the button can be restored to it’s “Idle” state, by
setting the progress back to 0, or calling resetBackToNormal explicitly.

Sample app updated to showcase this features, by adding a random
“failure” in the sign-in process, which the user can retry.
gitignore and manifest tweaking