Style the week-switch links
Improve UX of the timesheet page

* Only show weekends if users ask to see them or if there is time logged
to a weekend day on that timesheet
* Instead of having two-interactions on a drop-down for each entry, 
give a button group to represent full/half/absent.
* Give the notes field some more breathing room.
Implement sticky projects between weeks

This one was fun. There's no perfect way of doing this b/c you don't
want to add projects to already-existing timesheets (say someone goes
back a week, adds a project, and returns to this week--we don't want
to retroactively add a project for them to delete).

Since navigating to a timesheet's page also creates it, this is a one-
shot deal at creation time that will grab the projects off last week's
timesheet and insert them in-timesheet-order into the new timesheet.
The "in-timesheet-order" is significant, because if you arbitrarily add
all projects from last week, you might end up with your non-main project
defaulting to full-time presence, which would be annoying

(Note: this means that for almost all weeks, vacation/holiday are being
added twice, but since AR relations act like a set and not a list, it
still works)

Fixes #3