Elastic collision logic largely completed.
But who knows if it's "right"...