add a c++ edition and put all files in order.