Create structure of invoice functionality
Add search-by-invoice-number button to MainFrame
Modify Invoice class; Add isExpired method
Rename PurchasedArticle to Article
Rename PurchaseDetailFrame to InvoiceFrame
Modify Invoice.isExpired method
Improve ReadFile.getInvoice method
Refactor ReadFile.getCustomerList method
Modify ReadFile class
Refactor WriteFile class
Modify WriteFile
Refactor global constants
Fix a bug caused by removal of MainFrame.CurrentCustomer
Add show-invoice button to PurchaseHistoryFrame
Rename two frames
Create a layout for NewPurchaseFrame
Add ActionListener in NewPurchaseFrame
Add layout for NewInvoiceFrame
add-Invoice.article array
fix a bug in NewInvoiceFrame