Refactored autodeploy into class extension.
Added tests.
Added tests: take two.
Lint and QA tweaks.
Merge pull request #503 from kadams54/autodeploy-mixin

Extract autodeploy functionality out for use in multiple widgets.

Refactor the autodeploy code out so that it can be used by both the machine view panel (as it is currently) and the deployer bar, which will need it to allow users to autodeploy unplaced units at deploy confirmation time.