dms declinations with -00 not treated correctly

When parsing declinations from dms strings, astropy.coordinates doesn't deal with "-00" correctly. For example:

In [56]: print coord.Dec('00 30 00.0', unit=units.degree)
0d30m00.00000s

In [57]: print coord.Dec('01 30 00.0', unit=units.degree)
1d30m00.00000s

In [58]: print coord.Dec('-00 30 00.0', unit=units.degree)
0d30m00.00000s

In [59]: print coord.Dec('-01 30 00.0', unit=units.degree)
-1d30m00.00000s

The third output should be '-0d30m00.00000s', with a minus sign. The underlying problem is that the degrees string is converted to an integer before checking for a minus sign, so '00' and '-00' become the same thing.