throw errors for any invalid path construction

Fixes #96