Refactor and Alive mixin

@eduojeda Un par de cambios:

* Reemplacé `Object.build` por `new`. No veo necesidad de usar una construcción custom, si en realidad está haciendo lo mismo que javascript ofrece a través de la forma más `new`. Además IMO la sintaxis es más clara.

* Extraje un nuevo mixin `Alive`. Este mixin se encarga de leer el input (por ahora solo el keyboard) y de actualizar el sprite. Esta es la última abstracción grande que nos quedaba por extraer de las las entities.

* Introduje el concepto de `inputSource`. Por ahora hay un solo tipo `inputSource.Keyboard` que usa player. Mi idea es que esta abstracción sea usada cuando implementemos entidades con IA. 

Fijate si al menos podés pegarle una mirada antes de la semana que viene así podemos avanzar. Salute!