Tests that new-instance throws: - InstantiationError on interfaces and abstract classes - IllegalAccessError on inaccessible classes - NoClassDefFoundError on unknown classes This also verifies that we don't remove dead (code) new-instances which may throw.