3D utility functions

Some basic conveniences for working in 3D.
- unit vectors
- a few angle functions
- rotation transforms

I'd like feedback on:
- Is overlapping with 2D names a mistake?  I think the parallels are mnemonic, even though we'll need to import parts of Diagrams qualified.  But I'm open to persuasion.
- The choice of rotation functions
- For some reason I used unicode θ φ as variable names.  Is this a terrible idea, or only a bad idea?  I usually assume that people can read unicode but can only type ASCII.  Should I fix it?