* don't use raw input to recreate subcategories for filter urls and
external links
* if a page does not expect categories it will now error out if it is
called with parameters
* fixed infite redirect loop that could occur if the pageName was an
invalid string
* added lost filter string for external page call to NPCs Page
* hardcode sql limits within their respective components instead of
having them configurable
* creating a new DBTypeList defaults it to being unlimited
* SQL_LIMIT_NONE (0) > removed as it only existed for consistency
* SQL_LIMIT_DEFAULT (300) > frontend / Listview::DEFAULT_SIZE
* SQL_LIMIT_SEARCH (500) > Search::DEFAULT_MAX_RESULTS
* SQL_LIMIT_QUICKSEARCH (10) > Search::SUGGESTIONS_MAX_RESULTS
* TCs guild and arena_team tables as encoded as utf8mb4_general_ci,
which is not accent-aware. So we have to get all results and filter
for the correct one in php.
* fixes an issue where direcly accessing a guild/arena-team whith a name
simiar to an already known guild/team would lookup the wrong subject
on the server and then fail to create a local stub with already existing key.
(Shâdów vs Shadow)
* split global.js into its components, so it can be reasonably processed by setup
* make reputation requirements configurable
* move Markup and Locale back into global.js (removed associated build scripts)
* extend Icon to display iconId in lightbox popup