OCSADV-154 target analysis

This is kind of random. I needed to write a little program to gather some stats on the target types we were using, and in the process relocated the `edu.gemini.shared.util.immutable` ↔︎ Scala conversion syntax and added another `parseDocument` overload to `PioSpXmlParser`. 

Just to confirm, this needs to go into the **develop** branch; it's not for December.
Right, but if you would't have type, would it be beneficial to opt for a val rather than a def? Like I have some for SVG batik's API "enrichment" of the sort:
implicit val node2RichNode = (node: Node) => new RichNode(node)