Made piecewise function simpler and more general. The
new piecewise function allows functions of the type f(x0, x1,.. ,
xn) i.e. to have arbitrary number of input arguments that are evaluated
conditionally.
The new piecewise function does not allow
condlist to be a single bool list/array or a single int array.

A new keyword "fillvalue" opens up the possibility to specify "out of bounds
values" to other values than 0 eg. Np.nan.

Updated and added moret tests.