Return an unassigned Maybe when getCurrentRuntimeValue() returns a nullptr, as
this is expected behaviour in seec::trace::FunctionState if the active
Instruction is earlier than the Instruction whose value was requested.
Add seec::cm::Value subclass ValueOfScalar, to support methods that are
specific to scalar values.

Add a new layout engine LEVCString, which uses a horizontal table containing
each character up to (and including) the first null character. All other values
are elided.