S1724 - allow pattern-matching in vcp commands.

This story should enable the vcp command to use patterns against the return result from VOSpace. 

To implement this the glob module (standard python) was added to the vos.Client class as a set of methods. Those methods used various file-system calls to build the glob list and those calls were mapped to vos.Client methods.  Then, vcp was modified to use the Client.glob() method to build a file list.  To all image cutout patterns to be on the end of the filenames, those were first stripped from the pattern  (before passing to Client.glob).

These sorts of patterns should work:

vcp vos:rootNode/*.txt ./

vcp vos:rootNode/391[0-9]*.fits[1][1:100,1:100] ./

the second one above should match all fits images between 3910.fits and 3919.fits and attempt retrieve extension 1 in the pixel range 1:100,1:100.   

NOTE: There are lots of file-format tweaks as I accidentally did a PEP-8 file cleanup command. 
I agree.  vos.Client.glob is where the pattern matching happens.  To use glob in other commands, like vls, requires adding a call to glob.  The vcp command has the extra complexity of doing image cutouts (which vcat likely should have too)  so that bit of code is in the vcp script, but could be moved out to the library.