Add concatenate tests.
Add concatenate matrices API with axis.
Fix tests and refactor extent translation.
Refactor concatenate mapper and extent translation

This fixes the negative upper left boundary bug in translate extent that
occurs when tmp_ul is negative. The negative dimension in the upper left
coordinate will instead be set to 0.

The column logic and 1d if branch are replaced with a tight if, elif,
else branch that sets the row in result to either data_a, data_b, or
data_a + data_b (using np.concatenate).
Merge branch 'add-concatenate-to-builtins' of git://github.com/rgardner/spartan into rgardner-add-concatenate-to-builtins

Conflicts:
	tests/test_builtins.py
Merge branch 'rgardner-add-concatenate-to-builtins'
Fix diag and its code style.

This commit fixes `diag` to correctly call `_diag_mapper` instead of
`diag_mapper.` Diag no longer raises a NameError on `diag_mapper.`

This also ensures two blank lines precede _diag_mapper and diag and
updates the docstrings to the new style.
Add dimension check for diagonal

In diagonal, ensure the array has at least two dimensions and raise
ValueError if not (following NumPy's conventions). Update return type
in docstring to be ShuffleExpr (what it's always returned).
Merge pull request #167 from rgardner/fix-diag

Fix diag and diagonal.
distarray.__len__ should only return shape[0]
Merge pull request #170 from fegin/master

distarray.__len__ should only return shape[0]
Try to fix knn test.
Add travis status to README
Merge pull request #171 from EasonLiao/master

Try to fix forest test.
Merge branch 'master' into add-nbody-simulations

Applies fix for travis status.