Initial commit with external joints, first PivotJoint. A lot of refactoring