Join-along implementation

I was needing the ability to join two 2-D matrices the other day and noticed it had not been implemented yet.

I spend some time implementing something that worked for that case and wanted to see if it would be useful to incorporate.

A couple things:
1. It does not work on 3+ dimensions. I have an assert to prevent that. I assume the final join-along implementation will support that, but in the meantime this works for 2.
2. I started to add a compliance test. But then I noticed the the current join is set to test if the matrix has a dimension less than 0. When would that ever happen? It seems to me that the current join compliance test never runs. And when I set to to run with dimension == 1, there are many failures. Is this is a known issue for further improvement? 

If you are interested in my join-along implementation. And can let me know what is going on with the join compliance test, I can add a join-along compliance test.