High: cl#5055: Improved migration support.

Migrations are now calculated in a way that allows
them to be executed in much more complex situations.
Low: updated pengine regression tests for improved migration support

Why these changes are okay.

Improved migrate logic allows migration in this scenario when it
previously was not about to be calculated.
- bug-1820-1
- bug-1820

Groups are allowed to migrate now
- group-dependants

Clone child instance ordering is preserved even though
the pseudo action ordering has shifted.
- migrate-5.summary
- migrate-both-vms
- migrate-stop-complex
- migrate-stop
- order-serialize-set
- order-serialize

Advisory ordering between a clone and a migrating primitive.
During a migration, the stop action of the migration does not
have advisory ordering enforced.  During a migration, the resource
never actually stops. If this was a manditory ordering, the migration
would not happen.
- migrate-stop_start
- novell-252693-3
- novell-252693

The original migration was allowed incorrectly. The partial
migration target changed during the next calcuation, resulting
in the migration needing to be aborted.  The new migration
logic handles this correctly.
- migrate-partial-4

Order constraints where A then B, If A is migrating, B
does not have to stop anymore.
- migrate-stop-start-complex
- bug-1820-1
Low: new migration logic advanced test cases
Merge pull request #401 from davidvossel/new_migration_logic

Real migration logic
Low: fencing: Immediately fail remote fencing operation on peer timeout
Medium: pengine: Correctly perform partial migrations when node's uname is not equal to the id.

The migrate_source and migrate_target metadata attributes for
the migration operations represents the node's uname, not the
corosync id.  The node's id was being used when detecting
a partial migration, causing partial migrations to fail
when uname!=id.
Merge pull request #411 from davidvossel/master

Medium: pengine: Correctly perform partial migrations when node's uname is not equal to the id.
Fix: services: Correctly reset the nice value for lrmd's children
Merge pull request #410 from davidvossel/stonith_timeout_fix

Low: fencing: Immediately fail remote fencing operation on peer timeout
Merge pull request #412 from gao-yan/lrmd-children-reset-nice

Fix: services: Correctly reset the nice value for lrmd's children
Fix: fencing: Update stonith device list only if stonith is enabled
Merge pull request #413 from gao-yan/fencing-update-device

Fix: fencing: Update stonith device list only if stonith is enabled
Fix: services: Reset the scheduling policy and priority for lrmd's children without replying on SCHED_RESET_ON_FORK
Fix: cluster: Fix segfault on removing a node
Merge pull request #415 from gao-yan/remove-node-segfault

Fix: cluster: Fix segfault on removing a node
High: pengine: cl#5186 - Avoid running rsc on two nodes when node is fenced during migration
High: pengine: Force record pending for migrate_to actions
Low: pengine: Update regression tests for record pending on migrate_to
Low: pengine: Regression test to handle partial migration with src node losing membership
Merge pull request #416 from davidvossel/new_migration_logic

Correctly handle partial migrations when the source node loses membership