Started requiring services within all CommonJs modules.
Fixed a bug that meant we were throwing an error if an aliased class did
correctly implement the interface it was meant to, rather than didn't.