Link with -lcblas, not -lopenblas

As far as I can tell:

a) There is nothing requiring -lopenblas over the more general -lcblas,

b) -lcblas will use openblas if it is installed properly,

c) ATLAS is usually faster for me.
Ensure that the input array is contiguous

This change was spotted in a commit by Michael Schubert (mschubert)
<mschu.dev@gmail.com> in the danielfrg/tsne fork. That commit is
https://github.com/danielfrg/tsne/commit/22e2115800f3bea63c6e61f7a1aa4346b2950719
and touches a whole lot of stuff that doesn't exist here.
Compile with -ffast-math

-ffast-math trades away standards conformance and numerical precision
for speed. For example it truncates subnormal numbers to zero, and can
convert division into multiplication by the reciprical. I don't
believe these kinds of optimisations will hurt t-SNE, especially since
the implementation is full of ad-hoc optimisations anyway (not least
of which is the whole Barnes Hut thing).

It appears that this enables automatic SSE vectorisation in building
the tree with GCC 4.9 on x86-64 Linux.
Replace -msse2 with -march=native

On machines where SSE2 is supported, it will be enabled by
-march=native, but -march-native will also use more advanced
instruction sets if they are available.

On machines where SSE2 is not supported, compiling with -msse2 is not
going to work, while -march=native will.

The assumption is most users will compile on the target machine.

The last 4 commits have the following cumulative effect on the mnist
test:

    Building tree...
    Done in 1891.01 seconds (sparsity = 0.001854)!
    Learning embedding...
    Iteration 999: error is 3.509694
    Fitting performed in 689.22 seconds.

    Building tree...
    Done in 1565.03 seconds (sparsity = 0.001854)!
    Learning embedding...
    Iteration 999: error is 3.509400
    Fitting performed in 673.73 seconds.
Tell Emacs to use 4-space tabs in original code
gitignore Emacs desktop files and .pyc