Parent-child relationship

Hi, while wondering about parent-child relationships support I've come across #56 and #57. My needs are quite urgent to wait around until the issues are solved, so I've end up implementing the feature by myself.

As @pyromaniac has suggested, parent-child relationship can be defined as:

```ruby
define_type Country do
  field :name
end

define_type City do
  root parent: 'country', parent_id: -> { country_id } do
    field :name
  end
end
```

I'm quite new to this library so there might be some missed out parts. Thanks ;)
I think, we have to support both notations: `root parent: 'country', parent_id: -> { country_id } do` and `root _parent: { type: 'country' }, parent_id: -> { country_id } do`, so maybe it makes sense to leave only `if self.root_object.parent_id` here?