closes #156
fixes #155, fixes #157, fixes #158