Well, you can't exactly see the top level of my implementation..
At the top, while we're still working with an std::string, I do a file extension check to decide which loader function we will use..
then according to what the file extension is == to we pick the proper loader function and let it fly from there...