Force population of _result_cache by adding test for valid len

Without the len test, the _result_cache will not be populated as filter
does not set that property of the QuerySet object. It is not set until a
method is called that forces it to be set, using len() will force
_result_cache to be set and will also allow us to test and make sure we
got something back from our filter call.
Merge pull request #83 from cbmi/datafield_cache

Force population of _result_cache by adding test for length