Feature/add specs for module search filter

## RM #4790

### Description
The original bug was already fixed, but I added specs and fixed a minor bug:
- Adds 237 passing specs for search_filter.
- Adds support for matching by type:nop, type:payload, type:encoder

### Verification:
- [x] Test the new functionality:

        msf > search type:payload   # should return all the payload modules
        msf > search nop                # should return all the nop modules

- [x] Run the specs yourself:

        rspec spec/lib/msf/core/module_spec.rb