Change Lesson Plan to use Start Dates instead of End

**Requires a `db:migrate` - the milestone schema has been modified.**

These commits will change the lesson plan milestones to take a required start date, and an optional end date (instead of the current required end date.) The milestone generator and edit/create forms have been modified to this end, with Validatr used to check dates on the latter.

If a Lesson Plan entry has a defined end date that is > 1 day before the start date of the following entry, it will encompass the items in the "gap" between the two - that is, the start date of the following entry will be used as the cutoff instead of the defined end date.

Items that appear before the first user-defined milestone will be put into a *Prior Items* virtual milestone, which is displayed before all others in the list.