The first thing i have some troubles deciding is, should a sprite be a entity in the game or only define some image rectangles, properties and transformations.
Acording to model-view-controller approach a sprite is a representation (view) of an entity (model). This is more flexible, e.g. an entity can be represented by a 3D model instead of a sprite.