Merge refactor.

This merge introduces many new features. 

* Better specification of analyses.

Analyses can now be defined through helper methods in the ahkab.ahkab module, for example:

```
op1 = ahkab.new_op()
ac1 = ahkab.new_ac(start=1e3, stop=1e5, points=100, x0='op')
tran1 = ahkab.new_tran(tstart=0, tstop=1.2e-3, tstep=1e-6, x0=None)
symb1 = ahkab.new_symbolic()
```

The functions docstrings explain the parameters. The analyses objects themselves are simply dictionaries, they can be inspected and the values changed. 

Then they can be queued using the `queue(*args)` function:

```
ahkab.queue(op1, ac1, tran1, symb1)
```

The simulations are then run with

```
ahkab.run(mycircuit)
```

* No printing (or very little) is now allowed when running ahkab inside a python module or from the interpreter.

* No plotting to screen if there is no $DISPLAY available.

* Allow line continuation in netlists

* Many bugs fixed.