Vincenzo Nibali retains yellow with fantastic ride