1) HD wallets create a new address and send the change to that address
2) They have a website? Why would you need to use that? My app has been working for years with zero problems.
3) Create cold storage and add the public key as a watch only address
4) Sending money from any bitcoin address to another will be like any other transaction.