Convert HW blocks into assignments entries!

* New page type - assignments
* New assignments partial handles the well HTML bit
* Tags indicate which week they should appear on
  * each week now has a little {{# assignments.tags.weekX }}
  * assignment front matter has, e.g., `tags: "week9"`
  * exception: projects are tagged "prjX" because their main docs are often
    included elsewhere in the week notes
* Only some assignments have deliverables because of reminders or things that I
  don't actually grade.
* TODOs
  * Some messy stuff going on w/ HW naming!
  * Deliverable types have no real structure
  * Make an assignments page listing what was assigned when and when it is
    due!
Add assignments page listing due by week

* Added some ruhoh plugins to help w/ data organization and formatting
* Added names to all assignments w/ deliverables
* Added readable descriptions of deliverable "type"
* Added class first date for generating week names.
  * should have done that in the first place, hah!
  * FUTURE TODO: use that instead of hand-managed "title" for each week.
Add sidebar link to all assignments page