Fix folder searching for versioned URLs

This fixes a bug that caused versioned URL strings to be used when searching for $folder$ placeholder objects.
Only look up credentials when necessary
Tab completion proof of concept using argcomplete.
Remove moved class.
Rename argparse.py to command_argument.py
Style fixes.
Add tests for object completion.
Remove accidental change.
Better variable naming.
Move argparse/argcomplete imports back to tab completion as the libraries may not always be available.
Fix typo.
Style fix.
Add subdirectory test.