standardizing order of constructor args, adding additional constructor to support origin unknown