breaking changes - make api signatures consistent

made order of params consistent: key, object everywhere; all accessors use callbacks to return value; reuse tryget functionality instead of duplicating it.
update casing
fixed lots of stuff

put stuff into closure to reduce scope. should work
Merge pull request #2 from bruslim/patch-2

breaking changes - make api signatures consistent