Added safety for instantiation without new.

Also renamed a method and added tests.