Customize Point Of Sale

Hello. I have a requirement to edit the Point of Sale page. That includes changing the layout and adding buttons and functionalities. Since I cannot edit the core files, what is the best method to edit the existing POS module?