Implement API node registration

This is a very important feature, and not yet complete, because it has
no system to prevent abuse. As such, the default configuration has been
changed to bind only to localhost, rather than globally, in order to
limit the already small potential for abuse.