#16 add initial tests