Fixed #24034 -- Don't always overwrite deconstruct path.

Made deconstruct path overwriting for ArrayField conditional, so it only occurs when the deconstructed field is an instance of ArrayField itself and not a subclass.

See ticket https://code.djangoproject.com/ticket/24034.
Is there any reason why you have used `startswith` here rather than checking against the actual string?