My initial API-design. More functions will follow.