Added Assignment model, rspec tests

rspec tests added:
- when an assignment is past due date
- for `Assignment#criterion_class`
- some more Assignment attribute validations

I modified `Assignment#criterion_class` to make the following test pass:
```
Assignment
  #criterion_class
    when the marking_scheme_type is nil
      returns nil
```
yup, typo. lol