Split SubNodeFactory out of SubNodeAdder

Split SubNodeAdder into two classes based on the two roles it previously
implemented in order to make these roles more obvious. This should make
it more intuitve to use the SubNodeFactory to create Nodes without
having to accumulate them.

Change-Id: I18a1310a695ca069c205f901c433a3622c323375
1 file changed