model is more or less done.
updateAllPos() still needs a little work