add vehicle_traits
add some free functions
add std:: before size_t. and change interface
Add customer_type to Vehicle class

The class using vehicle_traits must have customer_type
Fix to use Vehicle class
Fix Vehicle::mileage()
Use vehicle_traits function
Use vehicle_traits function
Merge branch 'free_vehicle'

Implement vehicle_trats
Change the type of Customer::demand to std::size_t
Change the type of Customer::id to std::size_t
Delete Customer::Customer() from private