Use generics to specify the Observer type

OPEN - task 21: Use Generics in AbstractModel 
http://github.com/DevOpsDistilled/OpERP/issues/issue/21
Merge branch 'iss21'
Merge pull request #22 from TheKojuEffect/master

Issue 21 resolved