Add logging option and refactor vehicle going forward.