refactored PurchaseOrder class so status is handled within that class instead of PurchaseOrder manager class