Update to allow players to stay in/on vehicle when knocked back from border. From further testing I found that the key was to add a delay after ejecting the player and teleporting the vehicle to give the client time to process the vehicle being teleported. After such a delay it is then safe to set them as passenger of it again. With the delay the client mostly treats the player as if they're not in the vehicle but instead walking around freely.
A delay of at least 2 ticks worked on my local VM test server, but for potentially loaded live servers on the internet with players who potentially have slow/poor connections... a longer delay is probably needed to prevent client glitches. I've set the delay to 10 ticks (half a second) which still looks reasonable enough in-game, I think.

Further, I found that out of the native vehicles boats in particular quite simply cannot be teleported without the client ending up confused about where it actually is for whatever reason. I came up with a workaround for this by destroying the boat and spawning a new one in the correct position.

Bah, gotta love workarounds within workarounds.

As a reminder, this all primarily came about due to the ability to teleport entities which have a passenger being removed by the Bukkit team to apparently combat a nasty related bug.