Todo for code (not comprehensive):
- what is seed? removed for now
- Not caching for now (see old code for caching) also removed in lattice. I had some troubles. We may need to rethink how to cache anyway to save the most time.
- changed from inputs being qx,qy,qz to one qvector
- Functions not tested yet. When testing one by one, should document somewhere what was tested.
- Need scipy version 0.18.1 or higher (for spherical_jn) if not, could hard code this...