Make file extension filtering more intelligent

*** I accidentally submitted this request without pushing my squashed version, sorry ***
*** I have a version of this that allows more sloppy matching of each extension giving, but has more code: https://github.com/caleb/textmate let me know if that's a version you might want instead ***

Previously, the extension matching regex only matched one extension. Now we match all of the extensions.

Searching for an extension previously would only show files with that exact
extension. Now, when you search, it will perform a substring match.

This means that if a file has multiple extensions (e.g. .html.erb), searching
for just one of them will yield a match, and if you include both extensions only
those files with both extensions (in the same order), will match.

This is better for rails projects especially since they use multiple extensions
for their assets and views (e.g. .js.coffee, .css.scss).

A search for:

name.html will match:
name.html.erb
name.html

name.erb will match
name.html.erb
name.erb

name.htm.erb will NOT match
name.html.erb

This patch is public domain.