Add greedy argument to Registration and add DataNode type.

Matt W. --

Please take a look at this pull request for adding greedy argument and DataNode type.