Improve pinch-to-zoom on small screen sizes.

Scores can now be zoomed larger than the container size, with valid
scale factors being between 50% and 200% of the natural block height.
In addition, scores that are opened at small screen sizes (where the
available space is less than the natural size), the score is zoomed
automatically to fit, within the acceptable scaling range.
Calculate toggle button placement based on block (not scaled) height.
Scale map elements with blocks (for debugging purposes).
Add Siesta test framework for component testing.
Update middleware to support both Jasmine and Siesta tests.