Adelaide Crows outclass Sydney Swans in AFL thriller