Broke out the point to it's own file, added a type parameter to the point so it supports any Num element