build._control: ensure all builds have ._control

If a build was added to the queue, then re-added we swap the old build
with the new one but didn't bother giving it the default properties
(_control and status).

This was causing failures down the line when build._control was
referenced. This change ensures that all builds have _control and status
and updates the tests to ensure that.
Merge build-control-property-fix (#43) into master

build._control: ensure all builds have ._control

If a build was added to the queue, then re-added we swap the old build
with the new one but didn't bother giving it the default properties
(_control and status).

This was causing failures down the line when build._control was
referenced. This change ensures that all builds have _control and status
and updates the tests to ensure that.