updating with minimal stuff need to document and work out usage message beter