Persistent data structure for builtin collections

Not finished yet. Creating a pull request to test it. Need to do the same thing for ```BuiltinSet``` and ```BuiltinList``` as well.