Better qualimap axes

Main change here is that the x axis for most qualimap plots is now determined automatically when run without an explicit parameter, instead of using a hard default. How this is decided varies on the type of data, typically `2 x median` value or something similar. This code is entirely self contained now, so much better than earlier attempts at doing this.

Second small change is the addition of `plot.close()` statements. This makes no difference when run on the command line, but when the function is imported into another script and used to generate a lot of plots it dramatically improves memory usage.
This is kind of pedantic but if you want to re-raise an exception you caught you can just type `raise`

```python
>>> try:
...     raise RuntimeError("Your Runtime is down")
... except RuntimeError:
...     print "Oh how embarassing"
...     raise
... 
Oh how embarassing
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
RuntimeError: Your Runtime is down
```