Eliminate the use of singleton classes on CPK relations.

Previously, CPK overrode ActiveRecord::Relation on creation and
injected a singleton class into the object hierarchy, which caused the
relation (and the model holding it) to be undumpable.

I've moved the overridden methods into their own class, and overrode
ActiveRecord::Relation#new to act as a factory method, returning either
an ActiveRecord::Relation or a CompositePrimaryKeys::CompositeRelation
as needed.
Handle records == :all in HasManyAssociation#delete_records

Updating delete_record in line with AR 4.0.0 code. Without this calling
delete or clear on a has_many assocation can result in an exception.
Change to refeflect filename changes
Update nested_attributes to work with activerecord 4.0.x
Forgot to check in version update for website.
Merge pull request #169 from justinweiss/fix-marshalling

Eliminate the use of singleton classes on CPK relations.
Merge branch 'master' of github.com:drnic/composite_primary_keys
Fix test suite.
Revert "Eliminate the use of singleton classes on CPK relations."

This reverts commit 3a5724fe3eac5595d06f4997760b6a039798f8a6.
Get tests running again on ruby 1.9.3
Support activerecord 4.0.x
Merge branch 'fix-ar-4-issues' of git://github.com/nddeluca/composite_primary_keys

Conflicts:
	test/test_suite.rb
Don't include cpk key as an attributes - fixes json serialization (#168).
Add test for #166.
Merge pull request #170 from tomhughes/hasmany

Handle records == :all in HasManyAssociation#delete_records
Version 6.0.1
Fix usage
Implemented overrides to allow for versioning of AR models using postgres
Fixed specs and removed most deprecation issues
Reworded a comment