Extended interaction shapes

Extended the types of interaction objects available. Added coroutines
that can filter on position inside elliptical cylinder and ellipsoid.
Right now these are used with custom interaction objects but may change.