Adding disable logic for buttons.

Update tests, clean up approach.

Updating jasmine tests.