Support all symbols with unescapeHTML
Avoid creating unescape node every time for performance
Cache node on first request to avoid issues with test environment
Return undefined for null values in unescapeHTML
Add a performance test for accessors with varying amounts of sources
Change the source tracker pushing and popping to only instantiate source arrays when needed instead of preemptively.

 - Batman.Property source tracking is built upon a source tracker stack that gets pushed to and popped off of as properties are recalculated. This uses a little boolean to make thing a bit faster by delaying the push of a new source array to the stack until the first item goes to be added to the stack, and otherwise if no items are added no arrays are created and the boolean is just flipped back.
Move the source tracker stack back onto Property to see if it is any faster as a closure scoped constant.
Make the source tracker stack valid property its own variable
Parse keypaths that begin with numbers
Rebase master.
Reorder tests
Allow loading associated sets with options

something like foo.get('bars').load {baz_id: 2}, (err, bars) ->
pass 'env' when loading an AssociationSet
Added support for error message parsing from 422 responses in more recent versions of Rails while maintaining backwards compatibility with older versions of Rails.

JSON responses from 422 errors in earlier versions of Rails:

{"name":["can't be test","must be valid"]}

JSON responses from 422 errors in recent versions of Rails:

{"errors":{"name":["can't be test","must be valid"]}}

This fixes issue #567.
In IE7, it is not possible to get a character from a string using the box [] notation.
This caused IE8 to go return defined, enter a continious loop and then cause a stack overflow error.

Amended the offending lines to use charAt instead.
Build
Expose source tracker stack validity for debuggability.
Bump muffin for CS 1.4
Fix a bug where pushing multiple dummy source trackers would cause major breakage in the source tracker stack down the line.
Make SetIntersection and SetComplement skip a function call if there are no items to actually do anything with.