title: ORM Lite throws error when creating tables containing multi level foreign key
body: <p>I'm getting this error on ORM Lite when creating table ActivityLog :</p>
  
  <pre><code>10-23 04:06:32.255: E/com.timelord.dao.DatabaseHelper(1487): 
  Caused by: java.sql.SQLException: ORMLite can't store unknown class class 
  com.timelord.pojo.Category for field 'category'. Serializable fields must 
  specify dataType=DataType.SERIALIZABLE
  </code></pre>
  
  <p>I suspected that this is caused by the multi level foreign key. As you can see from the POJO class below, ActivityLog has Activity, and Activity has Category.</p>
  
  <p>Activity and Category are working fine.</p>
  
  <p>Any idea of how to do the correct mapping?</p>
  
  <pre><code>@DatabaseTable(tableName = "activityLogs")
  public class AcitvityLog implements Serializable {
  
      private static final long serialVersionUID = 1L;
  
      @DatabaseField(generatedId = true)
      private int id;
  
      @DatabaseField(canBeNull = false)
      @DatabaseFieldForeign(foreign = true)
      private Activity activity;
  
      @DatabaseField(dataType = DataType.DATE, canBeNull = false)
      private Timestamp start;
  
      @DatabaseField(dataType = DataType.DATE, canBeNull = true)
      private Timestamp end;
  }
  
  @DatabaseTable(tableName = "activities")
  public class Activity extends BaseEntity implements Serializable {
  
      private static final long serialVersionUID = 1L;
  
      @DatabaseField(canBeNull = false)
      @DatabaseFieldForeign(foreign = true)
      private Category category;
  }
  
  @DatabaseTable(tableName = "categories")
  public class Category extends BaseEntity implements Serializable {
  
      private static final long serialVersionUID = 1L;
  }
  
  public class BaseEntity {
      @DatabaseField(generatedId = true)
      private Integer id;
  
      @DatabaseField(canBeNull = false)
      private String name;
  }
  </code></pre>