Merge loaders and use filesystem

Easier for people to extend the filesystem and should be better
testable, because you can mock the Filesystem.
Also cleaned up a bit and brought the errors inline with the original
Twig loaders.