an exact algorithm for the structure matcher. Relies on generating the bipartite adjacency matrix, B. the determinant of transpose(B)*B will be zero if and only if there is not a perfect matching between the graph. Will be sped up soon  as it is slightly slower than the previous version.
Merge branch 'master' of github.com:materialsproject/pymatgen

Conflicts:
	pymatgen/analysis/structure_matcher.py
Merge branch 'master' of github.com:materialsproject/pymatgen
Merge branch 'master' of github.com:materialsproject/pymatgen
Merge branch 'master' of github.com:materialsproject/pymatgen
Merge branch 'master' of github.com:materialsproject/pymatgen
Merge branch 'master' of github.com:materialsproject/pymatgen
Added Linear_assignment code to determine maximal matching for bipartite graphs. For use in structure_matcher