moved files around, and use PClass (wrapper for making prototypal inheritance easier)