Add a submission system

Every assignment now has their own page at /assignments/<aid> and can
be submitted to via /assignments/<aid>/submit.

Each submission has their own row in the `grades' table and the files
are saved at /uploads/<gid> in the file system.