Implement enhancements demanded by nafergo

This implements issue #52