Rewrote the way of doing tests

Rather than loop through stuff in bash, we use Python to just generate
simple commands for us, with options being easily set by changing some
lists.
.

no idea why git is committing this thing twice...