Scaling does not effect performance at all. Everything is saved in a 4×4 matrix which is used to transform every vertex. That makes every instance of a mesh to an instance since the vertex data is the same and only the matrix has different values.
In your logic every object with a different rotation and position would need to be different instances since all this data is saved in the matrix as well.
Currently every object on the screen has at least one draw call, multiple if you use multiple materials.
Btw: Instancing allows you to give a list of matrices as uniforms to the objects. So no problems there 😀
I see your problems with animations. There is a need for better UI integration. For now you should set all animations in your Lua script. I hope to introduce some sort of time line for those things. Still needs some thought though.
I hope for some third party contributions since maintaining the engine and the editor are very time consuming. The UI system will be completed (to the extend I planned) by next week I think. After that I will look into smaller issues and feature requests.