All aboard on the best cruises for Gen X, millennials and Gen Z