Make structures_dict private

(builds on top of #52. Will rebase)

@astrofrog, I'm not sure if you think this is needed. I felt it made more sense to hide `structures_dict` from users of the `Dendrogram` class, and instead give `Dendrograms` container-like interfaces like `len`, `getitem`, `__iter__`, etc. Some of these functions already exist. This PR makes `structures_dict` private.

Along the same lines, `all_structures`, `__iter__` and `prefix_structures` all do very similar things. `prefix_structures` is needed in situations where the order is important, but it has a less user-friendly name. Do you think the three methods should be consolidated somehow?