added support for features in pull request #19 and #21 and changed order of callback and options in create function