[ticket/12759] Allow multiple fields to be loaded via get_option_lang

PHPBB3-12759
[ticket/12759] Cache lang options for all fields while displaying

Previously these would be fetched one field at one time, causing a large
number of queries in case there were large number of custom profile fields
and/or unique number of users in areas such as viewing topics. Resolve this
by caching them at once when generating data for displaying them in templates.

PHPBB3-12759
[ticket/12759] Cache the lang options earlier

Previously it would re-run on every post

PHPBB3-12759
[ticket/12759] Make sure $field_id has unique elements

Otherwise it would cause a bunch of repetitive IDs passed to the IN clause

PHPBB3-12759
[ticket/12759] Little code cleanup

PHPBB3-12759
[ticket/12759] Add phpDoc comments to explain get_option_lang

PHPBB3-12759
[ticket/12759] Cache lang_options on memberlist

PHPBB3-12759
[ticket/12759] Cache lang_options for pm_viewmessage

PHPBB3-12759
[ticket/12759] Extra line in profilefields_manager

PHPBB3-12759
[ticket/12759] Cache all lang_options in lang_helper instead

PHPBB3-12759
[ticket/12759] Remove lang_helper from profilefields_manager

No longer required

PHPBB3-12759
[ticket/12759] Fix type_bool and type_dropdown's UCP fields

PHPBB3-12759
Merge pull request #2636 from Dragooon/ticket/12759

[ticket/12759] Resolve query flooding while displaying large number of custom profile fields

* Dragooon/ticket/12759:
  [ticket/12759] Fix type_bool and type_dropdown's UCP fields
  [ticket/12759] Remove lang_helper from profilefields_manager
  [ticket/12759] Cache all lang_options in lang_helper instead
  [ticket/12759] Extra line in profilefields_manager
  [ticket/12759] Cache lang_options for pm_viewmessage
  [ticket/12759] Cache lang_options on memberlist
  [ticket/12759] Add phpDoc comments to explain get_option_lang
  [ticket/12759] Little code cleanup
  [ticket/12759] Make sure $field_id has unique elements
  [ticket/12759] Cache the lang options earlier
  [ticket/12759] Cache lang options for all fields while displaying
  [ticket/12759] Allow multiple fields to be loaded via get_option_lang
Merge branch 'develop-ascraeus' into develop

* develop-ascraeus:
  [ticket/12759] Fix type_bool and type_dropdown's UCP fields
  [ticket/12759] Remove lang_helper from profilefields_manager
  [ticket/12759] Cache all lang_options in lang_helper instead
  [ticket/12759] Extra line in profilefields_manager
  [ticket/12759] Cache lang_options for pm_viewmessage
  [ticket/12759] Cache lang_options on memberlist
  [ticket/12759] Add phpDoc comments to explain get_option_lang
  [ticket/12759] Little code cleanup
  [ticket/12759] Make sure $field_id has unique elements
  [ticket/12759] Cache the lang options earlier
  [ticket/12759] Cache lang options for all fields while displaying
  [ticket/12759] Allow multiple fields to be loaded via get_option_lang