closes #238
closes #236
closes #235
closes #240 closes #233