ABS chapter 4

Ready for review.
Discussion point. Should we `use 5.010;` or `use feature 'state';` ?