Refactor waypoint properties to use fragments