Add cloning methods, inheritance!