title: Invalid json representation of date
body: <p>My code:  </p>
  
  <pre><code>import net.sf.json.JSONObject;
  import net.sf.json.JSONSerializer;
  ...
  public void testDateSerializer() {
    final Date date = new Date();
    log.info("Today's date: " + date + " and date.getTime()=" + date.getTime());
    final JSONObject jsonObjectForDate = (JSONObject) JSONSerializer.toJSON(date);
    log.info("Same date expressed in json: " + jsonObjectForDate.toString());
  }
  </code></pre>
  
  <p>The output:  </p>
  
  <pre><code>INFO - 2011-08-13 22:12:04,938 - TestJsonConversion.testDateSerializer(52) | Today's date: Sat Aug 13 22:12:04 EDT 2011 and date.getTime()=1313287924927
  INFO - 2011-08-13 22:12:05,216 - TestJsonConversion.testDateSerializer(55) | Same date expressed in json: {"date":13,"day":6,"hours":22,"minutes":12,"month":7,"seconds":4,"time":1313287924927,"timezoneOffset":240,"year":111}
  </code></pre>
  
  <p>My questions:  </p>
  
  <ul>
  <li>Why year=111. We are still in 2011 unless I missed something!</li>
  <li>I am on US ETD, so offset is -4 hours, not +240, which, even expressed in minutes is still wrong regarding the sign of the offset.</li>
  </ul>
  
  <p>So what am I doing wrong?  Is this a bug in the library?  If so, what library should I use to accomplish the same conversion?</p>
  
  <p>Thank you</p>