closes #1221, closes #1219, closes #1222, closes #1223
closes #469, closes #1192, closes #1193, closes #1194, closes #1199