Updated for Clojure 1.3+ (Removed clojure-contrib)
Updated to use avro 1.7.1 and remove reflection warning.
Now we can avro-ify structures that have keyword keys instead of strings.
Changed the use of manual dispatch for pack and unpackers to multimethods.
Added potential untested keyword support for unpacking. Need to add for packing and test.
Looks like I already had keyword support at the last checkin! Yay!
Now I added the assertion!
Fixed api-tests unit tests by adding decoder keyword
Now I have all the unit tests passing. Now you can materialize particular fields, and field paths.
The algorithm is a little less optimal, but it was important for code management. Can always fix later.
You can materalize everything with keywords instead of strings.
Updated project information so I could publish it to clojars. Mades notes in the README that this project looks abandoned and that I'm taking it over.
Updated unit tests to be more comprehensive.
Added test case for address book example.
Ensured all unit tests pass.
Changed default unpacking behavior to return keywords instead of strings for map-keys.
Updated README with new usages, information, instructions to acquire, and notice of unpacking semantics change.
Fixed a bug with UNION field, added performance optimizations, updated dependencies.

- updated dependencies to clojure 1.4, removed clojure-contrib dependency,
instead linked to data.json 0.1.2

- core.clj - added handling of optional fields, fixed UNION Schema bug.
To implement optional fields you have to make a union between NULL and other type
that you want to be optional. But, if in the schema there is a null field,
then old implementation throws exception if you try to put some data in there.
For example we have a schema with [NULL, Real-type] - when trying to determine
it's (optional) type - NULL always works. So we need to make additional check if
the data are really NULL.

- Some performance improvements - added persistent! (uses transients feature from
clojure 1.4), does in-place updates.

- added :dynamic metadata to named-types because named-types are changed in the code

- added sync method for flushing the file streams where avro-writer writes.
Useful to have control and  not to lose buffered data that was not yet flushed do disk.
moved to use keywords, multimethods, pulled some changes from roxxi's fork
merged roxxi's fork, updated tests for case with unions schemas starting with null
Updated info about breaking changes in README.md
minor syntax analyzer fixes