New space station docking system and grouping.

# Description:
A new modeller based docking & bay grouping configuration system so that the modeller can define the orientations and positions used during docking and departure. Also the bays can be grouped together which replaces the dock_one_at_a_time flag.

## The Problem(s):
The existing Lua based docking procedure does not scale to handling N docking bays/ports. It's also difficult to get the positioning correct through scripting as opposed to doing it directly within the modelling program.
Also controlling the simultaneous docking of ships for bays is currently controlled by a single flag which is either on or off.

## The Solution(s):
Get the orientation and position of numbered and named waypoints from the mesh file itself.
Create a way to group the bays in the Lua with a simple interface.

# This horrendous commit:
The limitation on the number of bays is gone, or rather it's lifted from 4 to 240.
You can define docking from the modelling program.
You can group bays together with docking/leaving being limited to a single ship at a time per-group, however ships can dock with each group simultaneously.

There are docking waypoints created for all of the existing stations, with included 3DsMAX 2010 files and the dae file.
They work but since they were done by me are a bit ... bodged, I'm not great at the 3D modelling thing yet!

## Waypoint naming:
I'll briefly run down the list of waypoints but bear in mind that all of this is work in progress and might change a little over time.

### Approach waypoints:
*EDITED*
You can only have 2 of these for each bay, the 1st is far out and then 2nd is just outside the bay doors.
Naming: 
"approach_stage#_bay#" - "approach_" is what identifies it in the code, "bay#_" is the bay number, "stage#" is either 1 or 2 for the approach waypoints. 
Approach waypoints are only used to approach the station before docking waypoints take over.
*NEW*: You only need *one* set of approach waypoint per-group of bays, in which case you just need to identify one of the bay numbers within that group.

### Docking waypoints:
*EDITED*
You can have lots of these, numbering starts at 1.
Naming:
"docking_stage#_bay#" - "docking_" is the identifier, "bay#_" is the same as above, "stage#" runs from 1 upto whatever number you like! The last stage number is where it will be when it has docked - I have tried to always make the position and orientation of the last waypoint be identical to the first of the leaving waypoints.

### Leaving waypoints:
You can have lots of these and they DON'T have to be the same as the docking waypoints, meaning that you could enter and leave via different routes in theory. These are conventionally number 1-N where N is a big number :)
Naming:
"leaving_stage#_bay#" this is all the same format as the above explanations.
The last waypoint's orientation is MUCH more important than the rest, you have the others cause the ship to spin, flip and pirouette if you want but the last waypoint defines what direction it will accelerate away from the station in... I had some hilarious explosions getting that bugger wrong, repeatedly! I suggest pointing it _away_ from the spacestation ;)

### Group _(of bays)_:
Perhaps this is best with the example straight from "big_crappy.lua";
> -- define groups of bays, in this case 1 group with 1 bay.
> -- params are = {minSize, maxSize, {list,of,bay,numbers}}
> bay_groups = {
> 	{0, 500, {1,2,3,4}},
> },
What we have here is a single group with 4 bays. It defines the size of the ship that can dock, *even though that's not used yet*, then the bay IDs. Bay IDs start and 1 and run to 240. If big_crappy had two entrances and two bays per entrance it would look like this instead;
> bay_groups = {
> 	{0, 500, {1,2}},
> 	{0, 500, {3,4}},
> },
That's all there is too it. 

As described above there's also only a single set of approach waypoints for the single and they use "_bay1" to identify the group that they're associated with. You could have used 1,2,3, or 4 as the bay ID and it would still work.

### Important bits:
*EDITED*
Orientation is a bitch!
It seems as though sometimes the orientation can be a problem between the approach and docking waypoints. Right now though I haven't figured out why.

Typically it appears, when working in 3DsMAX only, that the docking and leaving waypoints are "+Y"=UP and "-Z"=FORWARD.

# Current state:
Ready for review.

Andy