[Incomplete] Document Data Structures

Hi David,

Sorry for the sudden hiatus... work was killing me
I'd like to gradually add some of the code I've written for work into breeze and get into contributing again.
For that, I think I really should understand the inheritance structure of DenseVector and DenseMatrix.

I've started an ambitious attempt to take notes and make a UML-ish diagram... do you think something like the following would be useful to really make complete?
![image](https://cloud.githubusercontent.com/assets/4279323/3775458/419e2098-1945-11e4-9190-1a6eb0bbc064.png)

I'd like to go through the classes and add more docs with your help, as well as make the variable/type anno naming consistent, if that's OK with you?

Sincerely,
Kenta
Actually, Long is also good for the `breeze.signal` stuff.

I'm thinking that `breeze.signal` should focus on input/output arguments `Int` and `Double`, but `Long` operations would really help internally... A lot of loop-heavy things in signal analysis can end up almost an order of magnitude faster with integer vs. float, and if you take a `DenseMatrix[Int]` and internally do everything in Long with  `convert(mat, Long)*1024: DenseMatrix[Long]`, than you can do most looping stuff without potential overflow problems etc..