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.
We prefer to use class methods for scopes:

```ruby
def self.by_amount
  order(amount: :asc)
end
```