add host 127.0.0.1 example

* Makefile: Make in doc/.

* doc/host-127.0.0.1.md:
* doc/Makefile: New file.

* doc/README.md: Update.
Use "uint32" and "int32" operators instead of modulo

* src/pf/parse.lua: Remove % operator -- it's not part of pflang!

* src/pf/optimize.lua: Inversion can try to get rid of these in many cases.  Inversion
  will rewrite relops with one numeric constant to have the numeric
  constant on the right-hand-side; adjust the length hoisting pass
  accordingly, and the test expectations.

* src/pf/expand.lua: Use "uint32" and "int32" operators instead of
  "%".

* src/pf/codegen.lua: Support "uint32" and "int32" operators.

* doc/host-127.0.0.1.md:
* doc/icmp-or-tcp-or-udp.md:
* doc/portrange-0-6000.md:
* doc/tcp-port-80.md: Regenerate.
Better length hoisting; fix bare "host" operator

* doc/Makefile: Remake .md files when pflua changes.

* doc/host-127.0.0.1.md: Regenerated, now with better length hoisting.

* src/pf/expand.lua (expand_host): Fix; should be "host src foo OR host
  dst foo", not AND.

* src/pf/optimize.lua (lhoist): Separately track the minimum packet
  length for an expression to evaluate as true or false.  This allows
  a more precise length computation.
Fix byte order of checks for literal IPv4 / ehost values

* src/pf/utils.lua: Rename host_uint32 / host_uint16 to uint32 / uint16
  -- the point is to construct a composite uint32 from an ordered sequence
  of bytes; the representation of that number in memory is irrelevant,
  as we have already converted the uint32_t* access to host order.

* src/pf/parse.lua: Fix mask construction for the /len case.

* src/pf/expand.lua: Fix mask construction and adapt to uint32 / uint16
  change.

* doc/host-127.0.0.1.md: Regenerate.
Reorder host expansion to dispatch first on protocol kind

* src/pf/expand.lua: "host" expansion should first dispatch on protocol
  kind.

* doc/host-127.0.0.1.md: Regenerated.
Eagerly check minimum packet lengths when matching packet protocols

* src/pf/expand.lua: Give names to protocol numbers.  If we match a
  packet for a given protocol type, eagerly assert that the packet is
  bigger than the minimum size.  This should result in some check
  elimination, as when accessing the src and dst addresses of ip
  packets.

* doc/host-127.0.0.1.md:
* doc/icmp-or-tcp-or-udp.md:
* doc/portrange-0-6000.md:
* doc/tcp-port-80.md: Regenerate.
pf.compile_filter properly names compiled function

* src/pf.lua: Pass filter_str name so we get good source location info.
Remove minimum payload assertions for bare protocol checks

* src/pf/expand.lua: For bare protocol checks like "ip" (not
  e.g. "ip[1]"), remove length assertion.  More closely follows pcap
  semantics and seems to remove a regression when benchmarking the "tcp"
  filter against a ping flood.
Add pflua-match tool

* tools/pflua-match: New tool, like pflua-filter but just matches.
  Useful for testing JIT optimizations.
Fix ip/mask syntax again; remove some coercions

* src/pf/expand.lua: Whoops, fix /len mask syntax properly.

* src/pf/optimize.lua (simplify): No need for uint32/int32 coercions on
  args to bitops primitives.
Fix bugs in range inference.

* src/pf/optimize.lua: Fix bugs in range inference.
Fix IPv6 portrange expansion

* deps/luajit: Update.
* src/pf/expand.lua: Fix expansion of has_ipv6_portrange.
* doc/portrange-0-6000.md: Regenerate.
Fix nits before merge

* src/pf/expand.lua: Remove unused functions.
* tools/pflua-match: Fix usage message.