A couple changes
Trying to get it closer to what we actually need, still just getting started.
Mostly listing functions we will probably need, do implementation later.
Comments on things we might need.