timezone_menu accessibility

- Added timezone_menu function to BF_date_helper to override the CI
date_helper's version of the function.
- Added 4th parameter to timezone_menu() to allow passing additional
attributes for the generated select element.
- This function should be removed from BF_date_helper if/when CI is
updated to a version that includes this change in its date_helper (it
has been in the develop branch for almost 2 years).
- See @internal note in function header for additional information.
- Updated user_fields view to use the updated function to add an ID
matching the for attribute on the label (which fixes an accessibility
error for all of the forms that use these fields, since the for
attribute must reference an ID value)
- Related to #505 and #538 (both of which were closed at the time of
this commit)
Add "required" attribute to module builder generated form inputs
Add FormNoValidate attribute to Delete button
Only display keyboard shortcuts settings link for users with the right to
change them
Update Migrations.php

Fixing logical error in conditional on line 945 where trying to check if var $currentVersion is "empty()" when that version is set to zero (0) to check if $currentVersion is !== '0' instead. PHP empty() function would consider zero to be false, and thus empty and then the subsequent SQL is applied incorrectly as a result. This patch resolves that issue and allows the installer to proceed properly now.
Merge pull request #1042 from corkyk/patch-1

Update Migrations.php to fix installer duplicate key bug
Merge pull request #1041 from q--/Only_display_the_edit_shortcuts_link_in_the_keyboard_shortcuts_menu_if_the_user_has_the_rights_to_change_them

Only display keyboard shortcuts settings link for users with the right to change them
Merge pull request #1038 from q--/Add_HTML5_required_attribute_to_module_builder_generated_forms

Add "required" attribute to module builder generated form inputs
Fix #1040 Performance Tips documentation errors

- Fixed link to CodeIgniter documentation for caching
- Removed reference to version 0.7 as the future version planned to
include more use of caching.
Merge branch 'develop' of https://github.com/ci-bonfire/Bonfire into develop
Fix logic error in migrations library

- If $currentVersion is 0 or false, the version should be inserted. If,
somehow, $currentVersion is the string '0', or any other version number,
the version should be updated.
- Also, moved the comment for the if statement in the conditional in an
attempt to clarify the intent of the code.
Updates to migrations 12 & 40

- Fix an issue where existing entries are not migrated when the
migration schema is upgraded (012_Migration_schema_change)
- Prevent potential conflict with a variable name in
040_Remove_updates_settings
Builder: Fix #1036 Undo Input Limitations

Added a "None of these" radio button to allow users to undo selection of
any of the radio buttons in the Input Limitations section of the
builder.
Cleanup in the helpers

There should be no functional changes here, just some changes to the
order of the functions, code style, and some updates to the comments.
Update Changelog with recent commits