Ok so based on what everyone is saying I'm just making things harder for myself (which is obvious). So I will just put the all the required #includes in the Sprite.h
The only question I have is how do I know when I should use forward declartions and when is it ok to #include in a header? (I know you can do the later whenever but I have heard people say try to avoid it)
Thanks for all the replies.