Explicitly force 404s on non-WebPath requests

Because the DocumentRoot is set to share/html, a request for /index.html
with WebPath set to /rt still _succeeds_, and presents the Mason source
for share/html/index.html

Add an explicit rewrite rule to 404 anything which is not under the
WebPath.
Don't exit a sub via next

If your lib/ contained anything but .pm files you would get a bunch of
perl warnings about next'ing out of the sub instead of returning.
Allow for an html/ directory

RT doesn't have one (since the 3.8 days) but external extensions use
html not share/html.
Check for the existence of items before tagging

When running this script outside of RT, you often won't have a
devel/tools or a Makefile.in
return more results when reminders are updated
Don't force Bookmarks to be unlimited.

This code dates from the original Bookmarks implementation when we just
used '__Bookmarks__' instead of "id = '__Bookmarked__'".

Without this, if you have 20 bookmarks, they all list on your homepage.
After the change, it obeys RowsPerPage.

Bookmarks is a normal search now, so you can always click on the title
to see a 'full' list.

I'm leaving __Bookmarks__ alone because it's the old deprecated code
that we're going to remove in 4.4 anyway.
Create new reminders in the configured "reminder_on_open" status

Otherwise reminders are created in the lifecycle's "on_create" status.
Completing reminders in this case requires a transition between the
"on_create" status (often "new") and the "reminder_on_resolve" status,
which may not be present outside of the stock configuration.

Additionally, creating reminders in a status other than the open status
means reminders start in a state that they can never return to;
re-opening a completed reminder returns to the open status, not the
create state.

Reminders don't need the complexity of a full lifecycle, and a two-state
system of "open"/"complete" is fine.

This does require that the reminder_on_open status is valid at creation
(i.e. can transition from "").  That requirement is less onerous than
requiring a transition directly from a new state to an inactive state.
Show friendly string instead of "0" for non-ticket "local" links in search results
Note that we no longer list all your Bookmarks in UPGRADING
set with_disabled_column in classes where it is missing

Set with_disabled_column in classes that have a disabled column in
the database but the flag is missing in the collection class.

The following classes will NOT get with_disabled_column set even
though the corresponding database table has a disabled column:

RT::Tickets
- Will be dealt with in 4.2 by dropping the column

RT::CachedGroupMembers
- all use cases of this lib need reviewed before adding

RT::ObjectCustomFieldValues
- Will be dealt with in 4.2 by renaming the flag.

See issues:20766
Merge branch '4.0/devel-apache-404s' into 4.0-trunk
Merge branch '4.0/add-with-disabled-column' into 4.0-trunk
Merge branch '4.0/show-more-results-for-reminders' into 4.0-trunk
Merge branch '4.0/more-flexible-license_tag' into 4.0-trunk
Update copyright dates from re-running license tagger
The farbtastic CSS mistakenly gained an RT license tag in 061cdbb; remove it
Merge branch '4.0/license-tags' into 4.0-trunk
Add an upgrade note about reminder statuses
Merge branch '4.0/status-of-created-reminders' into 4.0-trunk

Conflicts:
	docs/UPGRADING-4.0
Merge branch '4.0/remove-bookmarks-hardcoding' into 4.0-trunk

Conflicts:
	docs/UPGRADING-4.0