Change getBareMetalInstances call to getHardware

Per a ticket with softlayer because their API was returning an empty array to calls to getBareMetalInstances:

You do not have any machines flagged as a Bare Metal Instance. We used to refer to physical machines as Bare Metal Dedicated (monthly) and Bare Metal Instance (hourly). Now we refer to them as Bare Metal (monthly) and Bare Metal hourly (hourly). The getBareMetalInstances function will still return the hourly.

getHardware gets both according to Softlayer.
Adding optional tag functionality to salt.modules.dockerio.push
Adding optional tag in salt.states.dockerio.pushed
Merge pull request #15501 from highlyunavailable/2014.7

Change getBareMetalInstances call to getHardware
Merge pull request #15553 from basepi/bp-15516

Backport #15516 to 2014.7
Merge branch '2014.7' into develop