Clean up existing filter unit tests

This makes the unit tests more concise and easier to
follow.  Removes a lot of the duplication.  Also makes it
easier to write new filter tests.
Fix bug when filtering s3 locations

The pattern is evaluated against the entire bucket.  This doesn't
mattern for suffix searches, but for a prefix search, you'd have to
include the bucket name.  This is inconsistent with filtering local
files.  Now they're both consistent.  Given:

  --exclude 'foo*'

This will filter any full path that startsw with foo.  So locally:

  rootdir/
    foo.txt      # yes
    foo1.txt     # yes
    foo/bar.txt  # yes
    bar.txt      # no

And on s3, we now have the same results:

  bucket/
    foo.txt      # yes
    foo1.txt     # yes
    foo/bar.txt  # yes
    bar.txt      # no

I also added debug logs to help customers troubleshoot why their
filters aren't working the way they expect.
Change mututally to mutually
Merge branch 's3-fnmatch-bucket' into develop

* s3-fnmatch-bucket:
  Fix bug when filtering s3 locations
  Clean up existing filter unit tests
Merge branch 'carsonmcdonald-mututallytomutually' into develop

* carsonmcdonald-mututallytomutually:
  Change mututally to mutually