Alexander polynomial revamped. WIP : Others from the previous PR.

- [ ] put the Link import in a all.py file, then add it to the sage/all.py file
That way we don't need to import the module each time. Change the doctests
accordingly.

- [ ] The documentation of _homology_generators_ is still not clear.

- [ ] is_alternating should work also for links. 

- [ ] In the oriented_gauss_code i would do something like:

- [ ] Your code to compute the PD code from the braid is too bloated. 

- [ ] The ncomponents method is wrong:

sage: B=BraidGroup(5)
sage: b=B([1,1,1,1,1])
sage: b.permutation()
[2, 1]
sage: b.permutation().to_cycles()
[(1, 2)]

This would lead to conclude that the corresponding link has only one
component, but in fact it has four (three of which are trivial circles
unlinked).

- [ ] check on the pd code.

- [ ] returning in tuples than in lists.