Beginning of X6ADC class.

Starting from base of Brian's libx6.

--BRJ
Cleanup at the X6Rack level.
Fleshing out a bit of the X6 level.
Begin filling in the bottom X6 layer.
Minor cleanup of bottom layer of X6.
Some cmake fixes.

--BRJ
Progress on X6 bug fixing.

Still doesn't compile because I've introduced all kinds of headaches
with the move constructors. Might be better just to ensure that nothing
gets copied or moved... ever.

--BRJ
Fixed X6 move/copy build errors.

STL containers require elements to be moveable or copyable. Since we'd
rather not modify Malibu to make its elements movable, we'll just give
up on using a std::vector and just keep a standard array instead.

--BRJ and CAR
Some cleanup.
Remove the thunker and just use Unsynchronize()

Also makes Malibu libs into a linker group.
Successfully builds with gcc 4.7.1

--BRJ

Conflicts:
	hardware/APS/libx6-cpp/src/CMakeLists.txt
Add basic capability to transfer waveforms.

--BRJ
Remove raw_read and raw_write.

--BRJ
Implement basic wait_for_acquisition method.

--BRJ
Fix frame size calculation when decimation is disabled.

Also, extend wait_for_acquisition to be able to return a timeout error
code.
--BRJ
Remove the X6Rack layer.
Minor fixes to make things compile.

--BRJ
Tweak transfer_waveform signature for MATLAB calllib compatibility.

--BRJ
Basic MATLAB driver for testing.
MATLAB driver bugfixes.

--BRJ