Starting to add a nicer API layer.