Created generic extension filter
Fixed non-lowercase extension not recognized
Refactored extension filters to use FileExtensionFilter