Changed Road storge to use std::shared_ptr