[NC] Do not time out BOOTING instances that are in-process migrations.

Fixes EUCA-6013.
[NC] Rework semaphore handling for migrations.

Progress toward EUCA-6024.
Merge remote-tracking branch 'origin/testing' into dev/juphoff/migration
[CC] Continue sending migration prepare requests to NCs even after failures.

Fixes EUCA-6055.
Maintenance-mode bug-fixing.

- [NC] Don't automatically clean up instance if libvirt domain lookup
       fails--may be a migration anomaly.
- [NC] Track active outgoing-migration count, don't rollback timed-out
       migration preparations if they're being blocked due to an active
       migration.
- [NC] Don't deauthorize client credentials on migration destination
       if there are still pending (but not yet active) migrations.
- [NC] Don't blank migration src & dst information in instance struct
       on source when rolling back; the information is useful elsewhere.
- [NC] Refactor migration key generation into separate function.
- [NC] Verify in-progress migration counter when refreshing instance
       info.
- [NC] Don't time out preparing migrations when other outgoing
       migrations are in progress.
- [NC] Don't regenerate migration credentials when unchanged from
       previously used credentials (i.e. part of a multi-instance
       migration).
- Ignore Emacs auto-save files.

Progress toward EUCA-6024, EUCA-6030.
Merge branch 'dev/juphoff/migration' of git.eucalyptus-systems.com:eucalyptus into dev/juphoff/migration
Merge branch 'dev/juphoff/migration' of git.eucalyptus-systems.com:eucalyptus into dev/juphoff/migration
Merge remote-tracking branch 'origin/testing' into dev/juphoff/migration

Conflicts:
	node/handlers.c
	node/handlers_kvm.c
[NC] Fix merge-conflict resolution of call to find_and_terminate_instance().

Fixes EUCA-6024.
Merge remote-tracking branch 'origin/testing' into dev/juphoff/migration

Conflicts:
	node/handlers.c
	node/handlers_kvm.c
re-indent
Merge remote-tracking branch 'origin/dev/juphoff/migration' into testing