Bug 782467 - Remove sharpObjectMap and simplify obj_toSource; r=Waldo r=njn a=bajaj

The sharpObjectMap is only needed to check for recursion now. This means we can
share the necessary cycle detector code with busyArrays and remove the last
chunk of sharp related code.