Partial implementation of button state style

This is for review only. This partially implements the state style for
button (Issue: #78)