#29: add JSON support

Sample output:
```
% ./aws --json ls
sanity-check: "/home/tzz/.awssecret": file is missing.  (Format: AccessKeyID\nSecretAccessKey\n)
403 Forbidden

{"AWSAccessKeyId":{},"Code":"InvalidAccessKeyId","RequestId":"557CE92F56F81336","Message":"The AWS Access Key Id you provided does not exist in our records.","HostId":"END4PCwMGQf5a9teL2a+w1wRPLqSPvqn4/pHAeim4Lmjn0XFA0CQONy08WEbljCe"}%                                                                                                                                 

% ./aws ls
sanity-check: "/home/tzz/.awssecret": file is missing.  (Format: AccessKeyID\nSecretAccessKey\n)
403 Forbidden
+--------------------+-------------------------------------------------------------------+------------------+----------------+
|        Code        |                              Message                              |    RequestId     | AWSAccessKeyId |
+--------------------+-------------------------------------------------------------------+------------------+----------------+
| InvalidAccessKeyId | The AWS Access Key Id you provided does not exist in our records. | 35E00E9548286A86 |                |
+--------------------+-------------------------------------------------------------------+------------------+----------------+
```