Starting to generalize distributions

- Adding work on adding a second parameter to Distribution
- This will break dependent modules like Kernels and Tests for now