Refactored Button class

Button now exposes a 'Content' property so that its child is not
hardcoded as a Label