Graphene modification and functionalization