Add itest and make it look more like a framework