Added a file filter based on regular expressions

The file filter is included within the ihate plugin and uses the new `import_task_created` event which is fired for each task after it is created.
The plugin is only a first approach. Maybe the plugin rules are much to complicated. I'm not even sure if I'll use them for my own library...
A new pipeline stage is used to fire the event so the code to be changed is limited to one place.
<hr/>
Note: Running `tox -e py27cov` or even `nose` on my windows box lets fail all the new tests of `test_ihate`:
```
beets: WARNING: ** error loading plugin ihate
beets: WARNING: Traceback (most recent call last):
  File "D:\work\beets\beets\beets\plugins.py", line 211, in load_plugins
    for obj in getattr(namespace, name).__dict__.values():
AttributeError: 'module' object has no attribute 'ihate'
```
Running the test module without the other modules is working. I found out the the paths in `beetsplug.__path__` are different but couldn't figure out what's leading to the difference nor why one of values leads to failures. Seems I'm at the end of my python knowledge :wink:...
It's possible that this is the problem you're seeing with the tests: `_common.TestCase.setUp()` and `helper.ImportHelper.setup_beets()` are redundant. It's admittedly confusing, but the fixture in `_common` and the fixture in `helper` co-exist for the moment but we really only need one of them. (Eventually we should combine them and drop one or the other.)

For this case, I would recommend *not* inheriting from `_common.TestCase` and instead just use the `setup_beets` stuff.