configure: Add basic tests for Git repository methods

Signed-off-by: Euan Harris <euan.harris@citrix.com>
Merge pull request #37 from euanh/master

configure: Add basic tests for Git repository methods
Introduce SpecsDir.validate

SpecsDir class represents the Specifications directory. Its validate
method validates the given path to be used as a specifications
directory.
function to parse args with argparse
Use parse_args_or_exit
Implement real filesystem according to the double
fix ondefined name errors
Get rid of filesystem module, use fs library

fs library provides a convenient filesystem/directory abstraction, and
it also comes with an in-memory implementation, that is useful for
testing.
Added RPMPackage class
Rename - get_package_names
get_package_names -> get_package_names_to_install
config_path -> install_config_path
config_is_json -> install_config_is_json
RPMSDir creates RPMPackage
assert that the rpm_package's path is set
Add further assertion, and a comment
Rename
Added validator for existing directories
Added get_syspath function