Burn and tax on ERC20 transfer

Hi @genesis24,

I suggest looking at Points to consider when creating a fungible token (ERC20, ERC777) for an example issue for a fee on transfer token.

I noticed that you were using openzeppelin-solidity, you should change to use the current name, @openzeppelin/contracts. See: https://docs.openzeppelin.com/contracts/3.x/#overview