Api

made all the current api abstract from our mod. it is building and tests are passing.