* `if` builtin is the big one here - branching! Yay!
* The `if` builtin requires __bool__ to be implemented for things. This
is added for all builtin objects.
* Vtables have slightly better ergonomics.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This allows us to write out errors that follow the call stack and give
locations to where errors originated.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
We're turing-complete, babey!
* Call stack for functions now differentiates between native and quote
calls
* Better API for builtin functions allowing for more control
* Example showing off branches
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>