Attachments implementation

Basic working implementation of attachments.

Can click 'add file', add a file, and it shows up
in the list.  Can delete the file if you own the project
or task, or if you were the one that uploaded the attachment.

Renders each attachment row and an 'empty' row.

There's probably much better styling that could be done,
but I'll leave that to the designers.
Attachment cleanup + fns

Add the time the attachment was created to the list.
Sort the list by the time created (descending).

Add new attachments to the top of the list, not the
bottom.

Add the person who created the attachment.

Fix up some styling.
Implement attachments basic functionality.

Merge branch 'sprint8-feature-attachments' into sprint8