New rules for post_type argument

Previously, we were checking of the `post_type` argument existed, then passing that to a filter. WordPress in certain situations passes `post_type` as an empty string which was breaking our query. This PR does the following:

1) If no or empty `post_type` argument, default to `any` post type.
2) If `post_type` argument is present and not empty, use it. This means if you want to query for `post_type` post, you MUST specify it. WP defaults to either post or any depending on the situation. We are NOT mimicking this confusing behavior
If we want to search all post types, what if we just left off the post type filter?