Remake the old school classic "Breakout" game with the following spec:
- The canvas must take up the whole available screen space.
- Users control a rectangle shape, which they can move left and right with keyboard buttons. The rectangle is fixed towards the bottom of the screen.
- A circular ball moves throughout the canvas 'bouncing off' any other shapes it hits.
- Players have a number of 'target' rectangle shapes, in fixed locations at the top of the screen.
- If the ball hits a target, the target disappears.
- If the ball goes off the edge of the screen, the player loses a life and the ball is reset.
- Players have 3 lives to complete the game and eliminate all targets.
- If players run out of lives, they are given the option to restart the game.
- A count of remaining targets must be kept and displayed in the top right corner of the screen.
- A count of remaining lives must be kept and displayed in the top right corner also.