reworked &usage: separate regular output from error output, and others
dont toggle encode on -D flag, just set it
rewrote the unclever && do stuff to regular if-else