dropped dependency on JSON::XS, take two