Initial work for AGI library

This is our first major commit to sarlacc. I'm also happy to say we
include a bunch of unit tests to help mock our AGI APIs.  Learned
something new today.

Change-Id: I5df81a17babc91966534f289678348a01f86acf1
Signed-off-by: Paul Belanger <paul.belanger@polybeacon.com>