use const reference passing the coordinate container to makelevel()
check if coordinate container tmeplate parameter is set correctly

the constructor being used and the template parameter given must match.
This patch checks this through a static_assert before constructing the
container.