Changed more to metatables.
give me a hit if I messed something up @ninjalulz