Move Part and subclasses to new file