But this is movement code, which should probably not be in box.js, but rather some kind of EntityBox or something (since most entites would want to have something like this to ensure they are moving to a valid position). So it wasn't really "proper" there, but it was convenient, and didn't really harm anything (since that class was so tiny anyway).

But having it here is fine too (probably better, but I'm not sure yet)