Add decorations for things which are considered part of the API
Use nullptr instead of 0 for pointers
Use default member initializers and constructor delegation
Make sure all classes have sensible copy semantics They must either support copying or be derived from NonCopyable.
Add a Process class for running and interfacing with other programs