[runtime] Ensure reflection-based assembly load has a basedir set.

When loading assemblies, we must ensure that a basedir is provided otherwise
things like custom attributes and Type.GetType won't be able to load sibling
assemblies when basedir is not the same of the domain.
[runtime] Add a test for the type loading changes.