Optical nanosensors based on fluorescent carbon dots for the detection of water contaminants: a review