interface improvements, closes #3