Mon Jun 30 20:16:44 EDT 2014

Application endpoint access

So there's a couple of macros to set up IN1 / OUT1 specifically.  Make
this generic so an INx/OUTx writer/reader can be instantiated in the app.

There are only 2 cases:
  - single byte:                >INx  OUTx>
  - block transfer: read/write

Let's just try to do this in a dumb way.
The app currently only uses >IN1 and >OUT1

Maybe keep the core as is.  It's a bit hairy, and it seems that the
transaction handlers for the endpoints are not necessary.

Aim first at:
  - defining a generic OUTx> instantiator.
  - abstracting endpoint initialization

Seems that doing this with macros is not the right approach.  It might
be simpler to set a "current endpoint" and require non-reentrant