added back/reverse generation and args error checking
new files