Clean & speed up model API; fix some design flaws