update document and expose api
update travis to auto run coverage