Allow text entry on mission screens, tidy up some related code
Separate out some names

Save game name and player commander name are separate variables.
*NOTE*: I think I've set the variables up correctly for the Mac OS version of the save interface, but I can't test that.
*NOTE*: Just in case, back up your save games first!

ship.name, ship.shipUniqueName, ship.shipClassName separated out.
ship.displayName derived from those three if not set explicitly.
Merge branch 'master' of github.com:OoliteProject/oolite
Fix various bugs in mission screen text entry
Add ship registry interface to allow player to set names

Commander name now it's independent of savefile name; ship unique name at the same time.