commit some node creation and selection functionality.  Needs refactor and tests.  Will add reversable actions as separate service.