further limited the set of functions exported
reformating
refactoring, improving documentation (added examples for each exported function)