Allow segment size to be specified in a human readable way.

Instead of always specifying segment size in bytes the user
can now use B,K,M or G as suffixes for the corresponding
size.

Conversion is done with Binary units (1024) rather than SI
units (1000).

e.g

swift upload test_container -S 1073741824 large_file
can now be written
swift upload test_container -S 1G large_file

The change is backwards compatible as it ignores arguments to -S
that don't have a valid suffix.

Updated unit tests and help message.

Change-Id: I6314b4e45cf2fbffde2fe57a02df77a25e911e84
Merge "Allow segment size to be specified in a human readable way."
Fix the info command with --insecure

We forgot to propagate options into http_connection() for the info
aka capabilities command. Fix is to use the proper helper.

Fixes bug: 1381866

Change-Id: I9515203c969a1bba38dd909412355080383905f9
Merge "Fix the info command with --insecure"
--no-shuffle option

Added ability to turn off shuffle for files when downloading
Merge branch 'no-shuffle-option' of github.com:sohonetlabs/python-swiftclient into no-shuffle-option