- ModelDefaut becomes abstract class
- Add Example class extend ModelDefault
- Add a primary_key property in ModelDefault which store the name of the
primary key property 
- Fix some minor bugs