VLD detected mem leak: Too a while to figure this one out. Don't use container::resize(newSize) on a container that has pointers, you are not going to free indexes > newSize if newSize<container.size(). The items after newSize will leak. I removed whole reserve logic, there is nothing that accesses actions_ directly with indexes, just iterators where the index property is matched.
Color: Add setters, a lot nicer than spamming all the channels individually in core that uses Color.
Physics: Implement debug line cache mechanism and make bullet stop calculating debug lines if its taking too long. This means that we can clamp the time spent in debug rendering into certain msec time frame. Physics world will detect when the rendering is too slow and drops the framerate the calculations are performed. If new debug line data is not available a cache from last known state is used to render so there wont be any flicker. NOTE: Debug rendering will lag behind objects if they are moving, but your framerate is so poor if this happens that you probably will never notice. Debug rendering is done in real time if it is not too heavy. EC_RigidBody: New NewPhysicsCollision() signal, this will only be triggered for new collisions (eg. once when avatar drops to the groud), the other signal is spammed while avatar is also while touching the ground. This allows scripts to hook to NewPhysicsCollision instead to get a lot fewer signals into JS land. The old signal had boolean info if the collision was new, but this is too late as the time to convert all the objects to JS objects is already spent and perf has been killed.