More, more, more AGI functions and unit tests

Change-Id: I72a4fcbf540df60ff147804556ee1e29d5312d88
Signed-off-by: Paul Belanger <paul.belanger@polybeacon.com>
Even more unit tests and AGI functions

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