Simplify code by using Promises in a better way; try_load -> load

I haven't tested this, but I think it should work.
I also think this is fine.  A failed promise will continue on as a failed promise.