add `test` target in Makefile

mocha as devel dependency
Options for jshint
Implement dates restriction

Calendar has new `min` and `max` functions to define inclusive range of
valid dates.

Range checking is performed by DayRange class.
When rendering calendar dates ourside of the range are rendered with
`invalid` CSS class, so that can they be styled differently from valid
dates.

Calendar ignores attempts to select invalid date, although is allows to
show it.
Supress change event for invalid dates
Document new `min` and `max` methods
Tabs/spaces cleanup