Simon Russell Beale makes his wry, melancholy prince work surprisingly well in the Royal National Theatre's Hamlet