add API documentation, move si4060 routines to library