implement basic points api (closes #27)