Patch to deal with Parallel tests and _test.go files with examples

Apologies for doing this as a pull request in Github again, but I don't have a Bitbucket account and this lets me make any changes you need to the fixes if required.

This patch should allow for packages that have _test.go files for examples, but no tests, and where t.Parallel() is used, causing out of order PASS / FAIL. The combination of these two fixes allowed me to run using <package>/... on some code that I have, and on some tests where I was experimenting on some running tests on some purely functional code.

All tests were passing locally, but I had to remove some checks that you had in there, so it's possible that there needs to be a test for an edge case that they were covering that's still valid.