added versioning support
both browser and node tests are passing