Overhauling the API. Some initial work on a native map implementation.