What I need
Is there any software/engine/website (preferably free) that can analyze a given game (or PGN) of mine and tell me:
Whether my moves were excellent, good, bad or terrible.
Possible variations at different positions.
Reasons why a bad move was bad, and suggestions for a better move.
What I found
The thing I found closest to that is the computer analysis option on Chess.com , which tells me how many of my (and my opponent's) moves were good, bad and awful, and also suggests better moves in place of my errors. However, despite being rather good, it seems (to me) that it analyzes only the games I play on the site.