Number of new features/emulators

Hi Austin, 

This PR:

* enables VME transfer RAMS larger than 1 word
* makes the OrscEmulator a base class for different emulation types.
  - there is now an OrscEchoEmulator (just bounces the stream back)
  - and a work-in-progress OrscIpbusEmulator emulator, which reads IPbus packets and emulates them modifying a memory space

I had to fix a number of C++ incompatibilities in the softipbus SVN so you'll need to update that to HEAD as well.  Let me know if you find bugs or it doesn't make sense.  The next steps (IMO) are to 

* try to hook up the TCP Ipbus server to the fifos, and run the OrscIpbusEmulator vme2fd.  You should be then able to connect a uHAL client to the TCP server and read and right via Ipbus<->fifos<->vme2fd<->OrscIpbusEmulator.
* make a standalone Microblaze executable for the *real* oRSC backend chip (like [1]) that implements the same functionality as OrscIpbusEmulator, and try and make it work on the actual device.  It would probably be good anyway for you to try and see if you can compile all the packages in cms-calo-layer1.  There should be instructions on the README for that package.  You'll need to work on ayinger.hep.wisc.edu (you have to bounce through a login machine).

Let me know if one of these is more interesting to you.

Evan

[1] https://github.com/uwcms/cms-calo-layer1/tree/master/orsc_be_spi_echo_test