Support for selecting date ranges

Range selection mimics Hipmunk. Also streamlines button creation.
more consistency between date selection modes

support for deselecting dates and ensure calendarView:shouldSelectDate:
is respected when selecting date ranges
Additional delegate methods for start and end date selection
Fixed scrollToDate:animated: to actually scroll to the date

Was only scrolling to the month of the given date. Also added secondary
method to allow customizing the scroll position.
Tweaked scrollToDate:animated: to preserve @randomstep's change to take into account self.pinsHeaderToTop

Also added date range selection demo to test app
More calendar cell customization

Added public properties for text shadow color, today's text color,
today's shadow color. Also added public property to toggle display of
dates that fall outside of the current month.
fix for archive fail

The copy headers build phase wasn't making the headers available to the
parent project (and breaking the ability to Archive the parent
project). Moving headers to copy files build phase resolved the
problem. Not sure this is the correct fix ...
expose buttons on calendar row cell to allow further customization
Merge branch 'master' of github.com:mattgrayson/objc-TimesSquare into feature/date-range-selection

Conflicts:
	TimesSquare/TSQCalendarRowCell.m
Fix issue with initializing the selectionType in `viewDidLoad`. refs square/objc-TimesSquare#25
Use `NSUInteger` instead of `int` for button states array ivar
Add missing documentation for `dayButtons` and `notThisMonthButtons`
Fix crash when attempting to reset selections and the start date is `nil`
Ensure that the `selectedDate`, `selectedStartDate`, and `selectedEndDate` are updated appropriately when the selection type changes
Change `selectionType` to `selectionMode`
Eliminate `didDeselect` delegate methods in favor of passing `nil` for the date
Add callback for styling button for a date
Set selected accessiblity attribute on buttons as dates are selected/deselected
Move button states to public ivar
Remove unnecessary logic in `scrollToDate:animated:atScrollPosition:` implementation