"Try the stupidest possible thing" attempt to get catalog properties to wrap properly.

This doesn't really work, but I think it at least catches the appropriate structures that would need to be amended.
Moved wrapping logic to _make_catalog, inspired by Chris B

Untested. Completely untested.
Now I shift the low values upwards, and make a copy of index array.

This *has* been tested, and seems to work!
Reverting un-needed changes to dendrogram.py
Specific Error catching, rather than generic `except:`
Style cleanup for comment about wrapping structures.
Wrote a test for wraparound catalogs.
Merge pull request #121 from tomr-stargazer/wraparound_analysis

Simple fix for incorrect "wraparound" catalog properties
Adding two tests that reveal an asymmetry in periodic structure finding.
Added two more left/right tests; again, one strangely fails.
ChrisB's fix for periodic_neighbours. Tests pass now!
Merge pull request #125 from tomr-stargazer/periodic_left_right

Asymmetry in periodic structure finding.
I implemented the Lasso select in Scatter. There are still some kinks.

But basically, this is probably the framework that we'll be using!
The main obstacles to tackle:
rethinking how SelectionHub.select() should work, now that we might use the Lasso to select multiple unrelated structures.
The previous selection methods always assumed you wanted a single structure plus all its children, but now we might want to split these into two use cases:
1. You pick an object and want all its children
2. You pick a handful of unrelated objects and you don't want their children

in which case it might make sense to reimplement (1.) as a special case of (2.) which activates when you pass the select() function a single structure (and then it goes and populates the selection with all the children before passing it along to the plots) or something like this. You see what I mean?

This kind of thing would necessitate changing some of the logic in, e.g. BasicDendrogramViewer._update_lines() which calls DendrogramPlotter.get_lines() which has the code ```structures = structure.descendants + [structure]``` implying that when you plot some lines you always want descendants. I'm not super sure how hard I want to fix that, but if we wanted to have a perfect logical correlation with the scatter plots you circle and the specific branches that get highlighted, we would need to circumvent this "get all descendants" logic.
Minor style change: list(blah) instead of [x for x in blah]
Implemented non-subtree selections, so that Lasso select can work.

Fairly substantial change -- I've tested it decently well and I think it works great!
For most situations the syntax doesn't change but in some cases it does.

I think the only thing left "dangling" is that contour selection still only uses the "zeroth" struct, so I gotta use a loop in that case.
Implemented contours to add together for unrelated structures.
Made plot_tree conform to the new signature of get_lines.
Added screenshots to the docs.
Updating documentation readmes with lasso selection.
Added a real docstring to Scatter. Borrowed from an online example.