Unblock

Please comment and review.
It's the idiomatic way to build objects in JS/CS-land, however. Functions and objects are the same thing, the former is simply the latter that can be executed. I'm adding a comment in the code. To me, returning an object-that-pretends-to-be-an-instance-of-a-class is the weird thing to do  :P