Selector is prototype based object now

This is done in order not to copy all the methods each time a new selector is created.