General intersection line routine has been added.

intersectionTime will determine when a line intersects with
a moving particle. intersectionPoint will return where it happens.
Currently, the time seems to be always negative, so I think my velocity
is pointing backwards somewhere. Probably next up is to wrap the wall
into it's own object. Also, defining velocity(particle) as a convenience
function would probably be a good idea.