Bug 878310 -  Improve DeviceStorage volume status reporting. r=qDot

This changeset causes tranistory states when changing from mounted to shared,
and back to mounted to be reported as shared instead of unavailable.

We also don't send the same status twice in a row.