Refactor the refactor - No need to have an Entity constructor for now

* Export 'extend' function that creates new entities with default props
* Newly created constructors accept any properties and use the defaults
if property is not provided on instanciation
* Update tests