Adds Tracer objects that format information about the resolution.

Simply using the trace() calls was causing MASSIVE performance
degredation when the graph got large. Even if no ui is provided, the
strings were still interpolated. Some of the objects that were
interpolated can be GIGANTIC, which causes major slowness.

Now, unless you have provided a ui object, the output strings are never
calculated.
fix yardoc mistake
Allow a user to pass in their own Tracer object so they are not forced
into using the HumanReadable one.
Renames human_readable method to build because it doesn't always return a HumanReadable
Merge pull request #25 from RiotGames/fix_tracing_performance

Adds Tracer objects that format information about the resolution.