more hygenic compiled functions

if the `locals` object contained an `attrs` property it would end up overwritting the local utility function also called `attrs`. I have given all the utility function a "$" namespace to reduce the chance of conflicts. Hopefully I got all the places they are added to the buffer. The tests pass though.