Create machine

This adds the ability to select the constraints before creating a new machine.

A continuation of https://github.com/juju/juju-gui/pull/366

QA:
- open the machine view
- click "Add machine"
- a constraints form should appear
- if you wish fill in some constraints
- click create
- a new machine token "new0" should appear

To test cancel with unplaced units:
- drag a service to the canvas
- open the machine view
- drag the unplaced unit to "Create new machine"
- the unplaced unit token should have been removed and a constraints form should appear
- click cancel
- the unplaced unit token should  reappear
I think that this is being done because `_displayCreateMachine()` is called with parameters as well and being an event handler will cause issues.

The event objects being passed in have a unique object signature which you can check for in `_displayCreateMachine()` it's something along the lines of  `if (unit._event) { unit = undefined; }` You'll have to test to be sure. But this will eliminate this indirection.