MCVO: A Generic Visual Odometry for Arbitrarily Arranged Multi-Cameras