I have to do funny stuff as if you use prototypes you can no longer have private variables.