completed procedural-style calculator ... needs refactoring!