Detect cyclic references to prevent infinite recursion

Prevents panics from stack overflow with a heuristic to detect cycles.
I think this is just a bad comment, but I was not sure how to phrase it. The way `printValue` recurses, this invocation doesn't increase the effective depth. It's borne out by `go test -v` output:

as submitted in this PR:
```
	formatter_test.go:239: Example very long cycle:
		&pretty.R{
		    i:  1,
		    R:  &pretty.R{
		        i:  2,
		        R:  &pretty.R{
		            i:  3,
		            R:  &pretty.R{
		                i:  4,
		                R:  &pretty.R{
		                    i:  5,
		                    R:  &pretty.R{
		                        i:  6,
		                        R:  &pretty.R{
		                            i:  7,
		                            R:  &pretty.R{
		                                i:  8,
		                                R:  &pretty.R{
		                                    i:  9,
		                                    R:  &pretty.R{
		                                        i:  10,
		                                        R:  &pretty.R{
		                                            i:  !%v(DEPTH EXCEEDED),
		                                            R:  !%v(DEPTH EXCEEDED),
		                                        },
		                                    },
		                                },
		                            },
		                        },
		                    },
		                },
		            },
		        },
		    },
		}
```

With `depth+1` invocation in the `case reflect.Ptr`:
```
	formatter_test.go:239: Example very long cycle:
		&pretty.R{
		    i:  1,
		    R:  &pretty.R{
		        i:  2,
		        R:  &pretty.R{
		            i:  3,
		            R:  &pretty.R{
		                i:  4,
		                R:  &pretty.R{
		                    i:  5,
		                    R:  &!%v(DEPTH EXCEEDED),
		                },
		            },
		        },
		    },
		}
```