Improve comms system so that some roles/personalities can be prevented from falling back to generic
JSAI comms: a couple of utility functions

_setCommunications to set comms variables in bulk
_getCommunicationPersonalities to get configured personalities for a role
Increase MAX_SCAN_NUMBER to 32.

Most of the time it makes no difference, but in a busy situation it stops ships getting overwhelmed by a cloud of cargo pods and missing the action.
JSAI: Responses to thargoids

ship.checkScanner now has optional parameter to restrict scan to powered entities
Restore thanks-for-help messages
Fix bug causing thargoid response routines to be rather slow
Try to move JS garbage-collection out of the way of other code.

Probably should force a garbage collection at points where it's likely to be less noticeable.

Future Spidermonkey versions may have a better garbage collector for real-time apps, with the number of HTML5 apps there are, but it looks like we'd have to make significant API changes to use one.
JS garbage collection

Force garbage collection at more points where a short pause is okay. Log garbage collections called in update() for tracking purposes. So far they don't seem to have been needed with the additional planned ones.
ship.isTurret property