Numerous fixes and new methods.  Not quite finished (need to hook into the ArgumentParser for new methods)