Improve API and read me