improve visibility of functions and types, add readme