7:  click command for a repl interface which optionally takes a path to json file for context
9:  Add support for array slicing in paths (e.g. users[1:3])
10:  Support function calls in expressions (e.g. length(array), sum(values))
11:  Add string manipulation functions (concat, replace, etc.)
12:  Create regression tests for method-name keys (items, keys, values)
13:  Implement support for null/None values in expressions
14:  Add caching for frequent lookups to improve performance
15:  Consider lazy evaluation for boolean expressions
16:  Consider adding array operations (filter, map, reduce) for more powerful data manipulation
17:  Add type validation to ensure consistent behavior across different data structures
18:  Provide explicit type conversion functions (toInt, toFloat, etc.)
19:  Consider a custom path expression parser to replace JQ dependency for better control
20:  Create CLI improvements to accept context from stdin/files
21:  Add async support as an alternative to the current thread-local implementation
22:  Build documentation site with comprehensive examples and patterns
23:  Consider JSON Schema integration for type validation


Date improvements

1. "between X and Y" operation
2. Date arithmetic. Add/substract periods from dates
3. Relate references - "yesterday", "tomorrow", "last week".
4. Component extraction - "year of {date_ref} is 2024"


Pluggable Resolver


Replace jq with jsonpath for context
Or context could be anything, like a SQLAlchemy session and the
resolve is a function that takes a path and fetches something -
ie an api for fetching data.


