Using Getopt::Long to parse arguments.

Still backward-compatible with the old positioned format,
but allows the more complex arguments to be more meaningful.
fixing a gitignore problem
Added new Matrix layout.

The Matrix layout is more flexible and thus more complex.
Documented new argument format.

The old style still works, but it is now undocumented.
version bump