NumberEntry: Update layout after buttons are created
SymbolButton: Extracted SymbolRenderer::DrawSign() function
Screen/Point: Added GetCenter() method
SymbolRenderer: Simplified DrawSign() by using GetCenter() method

There is no need to calculate the center coordinates multiple times
SymbolRenderer: Added DrawArrow() function
SymbolRenderer: Applied naming convention
SymbolRenderer: Simplified DrawArrow() by using GetCenter() method

There is no need to calculate the center coordinates multiple times
DigitEntry: Use SymbolRenderer for plus and minus signs
DigitEntry: Call assert() before using the checked variables
DigitEntry: Use ButtonRenderer to draw button background for plus and minus
DigitEntry: Removed duplicate padding

The padding was already applied to the digit_size struct.
DigitEntry: Return -1 from FindEditableLeft() if function fails

This is now the same behaviour as FindEditableRight()
DigitEntry: Return -1 from FindNumberLeft() if function fails
DigitEntry: Added API documentation
DigitEntry: Fixed assert() calls in SetCursor() method

There is no need to check the *old* cursor value. If length is equal to
zero then the _cursor < length check would fail too since _cursor can't be
negative.
DigitEntry: Added CreateUnsigned() method
DigitEntry: Simplified GetFixedValue() method