DSL Niceness

Use `instance_exec` when setting up a record, so you can use `self` for accessors or eventually turn them into method calls. For backwards compatibility it passes the object as an argument too.

Currently:

```ruby
record id: 1 do
  self.attribute = "something"
end
```

Possibly:

```ruby
record id: 1 do
  attribute "something"
end
```