Make `calculate` static and fix operator precedence.
Add support for variables with a string->double map.
Update README.
Add test cases and Makefile.