Modified public api interfaces

The public api methods have been tested a little better and refactored, in some cases, to better maintain information.