added omnibus test

i added an additional test and ran into a few questions

- do we want tests to operate on arrays of arbirtrary dimensions? to me that feel weird but apparently this is how other tests in scipy are implemented. to me it feels most natural to request 1D vectors or to ravel the array if this is not the case. if we decide this way, we need to take care of the axis argument in the two functions; if not the testing functions need to be fixed to account for that. 

- could somebody look the functions over for coding style improvements or other obvious things?

- i added a utils file, because i didn't know were to put stuff for conversion from angular to radians and back
Why not use 
> m1[i]  = np.sum( w[(alpha > dg[i]) & (alpha < np.pi + dg[i])] )
Another option would be (without having tried) using broadcasting
> m1 = np.dot( (dg[:,np.newaxis] < alpha[np.newaxis,:]) & (dg[:,np.newaxis] +np.pi > alpha[np.newaxis,:]) , w)
> m2 = n-m1