closes #233
closes #127
closes #213