Remove the assert on hyperspace target being a system path

It is now obsolete, as one can specify at which star one wants to jump.
New API to make (almost) uncondional jumps

This commit adds new InitiateHyperjump and AbortHyperjump methods to
Ship, with only the minimal consistency checking (not in hyperspace
already, and not jumping towards the current system), as well as a way
to use an arbitrary Lua function to abort the jump during the countdown.

The plan is to make these methods available from Lua, and to implement
all Hyperspace-related policies in Lua (waiting on #1719, as usual). In
the end, I plan on removing CheckHyperSpaceTo and friends.

In order to make this work, I had to add a temporary flag to
the HyperspaceOut structure to tell the various checking functions not
to deal with considerations of fuel or range when the hyperjump has been
initiated by the new methods. This flag will definitely be on its way
along with all the fuel-related code in an hopefully near future.
LuaShip: Expose InitiateHyperjumpTo and AbortHyperjump to Lua
Go back in time when getting out of hyperspace to avoid rounding error
Add a new CheckHyperjumpCapability() method to Ship

and use it to still do the simple checks before jumping into hyperspace.
Merge remote-tracking branch 'origin/lua_hyperjump'