Add fallback case for battery status

The logic for determing the charge status did not take into account if
the battery status was either "Full", or "Unknown" which is reported on
some hardware when the battery is fully charged. This commit adds a
fallback status that assumes that if we're neither charging nor
discharging, we're running on A/C and reports the current charge level.