Lots of work - added sprites and many other features