a bit more compact and C++-like point_t struct