Allow literals to use object with kvc properties

@tgoyne 

Fixes #854
This is a bit difficult to grok. How about:

```objc
id obj = (isDict || [dict respondsToSelector:NSSelectorFromString(prop.name)]) ? [dict valueForKey:prop.name] : nil;
```