AFL Magpies' Grundy re-signs for 7 years