throwing Error instead of returning a value

`Fix` is used as a constructor. In JavaScript constructors cannot return plain values, they always return objects.

I fixed it by returning `Error` when omitting `className` argument and added a couple of lines to ensure that `Fix` is called with `new` operator.