* Rename `HashMapConfiguration` to `HashMapContext`
* Rename `EmptyConfiguration` to `EmptyContext`
* Implement `Context` for both predefined contexts
* Add the `ContextNotManipulable` error variant
* Add function `EvalexprError::expected_type` to emit a specific type error when a type is expected dynamically within a context
* Update tests and doctests
* Add ValueType enum to aid dynamic typing
Relates to #22
+ Added shortcut functions `eval_[type]` and `eval_[type]_with_configuration` for each value type
+ Added integration tests for the above
Partially implements #15