Major API rework.