Print full classname (inner class support) and fix enum output

@benjchristensen 

`Class.getSimpleName()` is empty for inner classes, leading to an error message that looks like this: "OnError while emitting onNext value: .class"

Also, `Enum.name()` is always safe and not expensive so we can use that when there's a failure emitting an enum value.