Updated `Error` to accept and ID and added a class-wide constant mapping
error codes to human-readable strings; incorporated changes into the
toString() method.
Moved logic for computing temperature/voltage from multiple classes
(i.e. `ReferenceVoltage` & `Cell`) into static methods in `LineData`.

Fixed ReferenceVoltage to actually compute relevant data.