Fixes #33: Refactored global registration

This slightly different registration provides a more robust way to incorporate into other libraries. I cleaned up the registration to all be in one place and passed the factory function to define instead of declaring a static name for the library: 'exif-js'. This way it can be called by its file name.