Added validations to user submissions

Fixes #83

This involves making a form object (Contribution)
I've also fixed up the routes to use standard resourceful routing.
Added feature spec for submitting a capstone with errors and resolving.