Behavioral unit tests for NetworkEditorController. Closes #32.

We still don't catch the invalidConnection signal in the GUI layer, I'll
make a separate issue for hooking that up. It's a pure refactoring since
there's already correct logic there.