Enhance AccountJson to handle authorized types

Thoroughly test everything using scalacheck.
Enhance AccessTokenJson to handle public and authorized types

Also, rewrite test to use scalacheck.