use c++-style standard headers
use auto more often