Covalent Patterning of Graphene for Controllable Functionalization from Microscale to Nanoscale: A Mini-Review