Use admin class function to check permissions.

This allows the ProductChildAdminBase sub-classes to override the `has_*_permission` methods. I'm not sure if the specific solution is the best approach but I do think using `has_*_permission` methods in some way is better than using `user.has_perm` directly.