Recent Advances in Controlling Syntheses and Energy Related Applications of MX2 and MX2/Graphene Heterostructures