Added ModelAware trait and interface