Make -tableView:heightForRowAtIndexPath: faster and linear in time, refs #6

Mostly an implementation of DwightEverhart sample code (https://github.com/square/objc-TimesSquare/issues/6#issuecomment-13690845)
scrollToDate:animated: implementation.

This method allows the consumer to scroll to a given date month
instead of always starting in the firstDate month. Also allows to
programatically move the calendar view to a desidered date, either
animated or not.
Update TestApp to showcase scrollToDate:animated method.

The TestApp firstDate is one year in past, but the scroll is set to
today month after the views did layout.
Merge remote-tracking branch 'kemenaran/optimize-height-calculations'