Node references

Allow properties to directly reference nodes. Previously, properties couldn't contain a node reference in a way that was meaningful outside of `model/javascript` or that would survive replication.

This is a predecessor to `branch/collection-events`, which needs to send a node reference in `node.children.added` and `node.children.removed`.

@eric79, please review. @allisoncorey, @scottnc27603, @jessmartin, you also may be interested.

I might make the explanation of what *application values* are a parenthetical in the first sentence.  I was confused by it, and it threw me off before I read your second sentence that explained it.  :smile: