inital source
rearranged for client library
added doc.go file