added numeric calculator with tests