Allow options.defaultValue of DS.attr to be a function

This change allows the defaultValue defined for a DS.attr to be a
function, so it is possible to do something like this:

```
User = DS.Model.extend({
  createdAt: DS.attr("date", {
    defaultValue: function() {
      return (new Date());
    }
  })
});
```

This closes #878
Typo in Bulk DELETE test

This test labeled as issuing a `PUT` instead of a `DELETE`

The actual test code does make a `DELETE` request
Merge pull request #882 from southpolesteve/patch-1

Typo in Bulk DELETE test
Merge pull request #879 from pangratz/allow_function_as_default_value

Allow options.defaultValue of DS.attr to be a function