Add donations to donation levels

A user can choose to donate at a specific donation level for a specific project. 
The donation amount, associated donation level, and donating user id are recorded in the database.
use `validates :user` so that it also validates that the user exists, and gives you a prettier error message