Use dedicated object for way faster and more encapsulated transfer mapping. Add 'use strict' directive. Fix typo for error message
add gitignore
Use Object.create() to instantiate copies of objects instead of explicitly calling constructors. Use Docco syntax