Search for files in order of get_search_paths()

The reversed order was originally because we would recursively
merge in subsequent files with the same name, which made overrides
simpler.  Given we no longer do this recursive merge, we should
be iterating in the order given by `get_search_path`.

Fixes #330.

cc @kyleknap @danielgtaylor