Class#allocate

Specs fixed:

Class#allocate
- does not call initialize on the new instance
- raises TypeError for #superclass
superclass attr is mutable
random style nit
remove superclass from immutable fields
Create singleton class
Merge pull request #678 from krekoten/class_allocate

Class#allocate