Registers boolean jinja filters as jinja tests

Jinja2 has separate notions of [Filters](http://jinja.pocoo.org/docs/templates/#filters) and [Tests](http://jinja.pocoo.org/docs/templates/#tests), but Ansible currently registers all of its Jinja2 extensions as filters, even those that return boolean values.

This commit ensures that the boolean-returning filters are also registered as tests, and provides hooks for user plugins to create their own tests using a filter_plugin.

It also updates the documentation for jinja test functionality.