add api notes
add basic tests