making some progress on features implementation