Removed schema var and added error handling

Instead of having the schema be passed to the parse function as a
string, schema is now the argslist struct itself.  That way it is easier
to dictate which flags are allowed, their types and what their values
should be.

Also, added error handling and removed the superfluous debug printf()s.