Button - bug fixes, issue #1246

  - Fix incorrect passing of "was clicked" to processInteractiveObjects
  - Button would not return to Over/Out state because of strict too check to catch `undefined`
  - Removed [undocumented] property usage from processInteractiveObjects and slight reformatting
  - Update Button state frames/sounds to remove duplication
  - Updated documentation in Button for consistency
Merge remote-tracking branch 'upstream/dev' into wip-1246b
Changes to preserve original API

- Added @deprecated/@readonly to various some properties but public properties maintain the same semantics
- Also removed some "cleverness"
- Still same good fixes ..
Browser incompatibility fix - MAX_SAFE_INTEGER

- Number.MAX_SAFE_INTEGER is only defined in ES6 and not currently cross-browser
Merge pull request #1272 from pnstickne/wip-1246b

Button - bug fixes, issue #1246 (try number two)