Added basic library interface

I just added functions to define the interface we discussed yesterday, no implementations or anything.