Fix: filterMap was missing a parameter

filterMap was previously giving a `Cannor read property 'ctor' of undefined` error. Turns out that the basics function was missing the function parameter (along with its helper function).

I also switched to using the already defined `foldr` function, instead of `Native.List.foldr`. Elsewhere, [`unzip`](https://github.com/elm-lang/Elm/blob/afff54c8c9a5e423e52a2671c2f10b4ccb6860bd/libraries/List.elm#L252) uses the previously defined `foldr` function. As does [`intersperse`](https://github.com/elm-lang/Elm/blob/afff54c8c9a5e423e52a2671c2f10b4ccb6860bd/libraries/List.elm#L272) and [`partition`](https://github.com/elm-lang/Elm/blob/afff54c8c9a5e423e52a2671c2f10b4ccb6860bd/libraries/List.elm#L208). So I felt that style of the file called for using the Elm definition over the JS definition.