format as ast in the right spot

so I made a bug :( I wasn't formatting back to an AST for any of the other options other than printing to stdout, this fixes that.

The only thing now that might be a little weird, is if you try to use `--diff` or `--list` when the original is not an AST but you use `--save-ast` not sure how I wanted to handle it, but leaving as-is for now.