break up functions in storage to make them easier to unittest

Many functions in DDR.storage parse the output of commandline
tools such as udisks and df.  Also, they work with removable
devices that may or may not be present on a test machine.
This commit breaks up some functions so that test data can be fed
to the code that does the parsing.
unit tests for DDR.storage