renmaed some more things beause clobering
added procedure-cell? function