modified our human_attribute_name patch

All /(.*)_id/ attributes names will be stripped of the '_id' part.
Prepare for the new Rails3 way translation files.
[OPF #414] fixes issue description diff

- fixed journals_controller#diff
- adapt redmine diff helper for new diff markup
specs

- new specs for journals_controller#diff
- ported journal_formatter specs from old test repo
restructure en.yml to a better rails3'ish style

We use attributes; activerecord.models; activerecord.attributes;
query_fields now. All field_<something> were removed and/or renamed.
Have a look at the following list of moved/renamed/removed or otherwise
modified translations:

**Now translated with <model>.human_attribute_name(<attribute>)**
And moved from field_<something> to
activerecord.attributes.<model>.<attribute> or attributes.<attribute>

* field_login: Login
* field_password: Password
* field_password_confirmation: Confirmation
* field_new_password: New password
* field_firstname: First name
* field_lastname: Last name
* field_admin: Administrator
* field_base_dn: Base DN
* field_name: Name
* field_mail: Email
* field_author: Author
* field_field_format: Format
* field_value: Value
* field_title: Title
* field_tracker: Tracker
* field_subject: Subject
* field_fixed_version: Target version
* field_user: User
* field_parent: Subproject of
* field_mail_notification: Email notifications
* field_effective_date: Due date
* field_type: Type
* field_base: "General Error:"
* field_comments: Comment
* field_url: URL
* field_start_page: Start page
* field_hours: Hours
* field_activity: Activity
* field_identifier: Identifier
* field_issue_to: Related issue
* field_delay: Delay
* field_time_entries: Log time
* field_default_value: Default value
* field_parent_title: Parent page
* field_parent_issue: Parent task
* field_custom_values: Custom fields
* field_onthefly: On-the-fly user creation
* field_account: Account
* field_host: Host
* field_port: Port
* field_language: Language
* field_identity_url: OpenID URL
* field_created_on: Created
* field_updated_on: Updated
* field_status: Status
* field_is_required: Required
* field_is_for_all: For all projects
* field_is_default: Default value
* field_is_closed: Issue closed
* field_is_public: Public
* field_active: Active
* field_done_ratio: "% Done"
* field_group_by: Group results by
* field_column_names: Columns
* field_filesize: Size
* field_last_login_on: Last connection
* field_version: Version
* field_priority: Priority
* field_category: Category
* field_assigned_to: Assignee
* field_start_date: Start date
* field_due_date: Due date
* field_project: Project
* field_estimated_hours: Estimated time
* field_description: Description
* field_spent_on: Date
* field_issue: Issue
* field_notes: Notes
* field_sharing: Sharing
* field_filename: File
* field_impaired: Accessibility mode
* field_homepage: Homepage
* field_assignable: Issues can be assigned to this role
* field_watcher
* field_attr_firstname: Firstname attribute
* field_attr_lastname: Lastname attribute
* field_attr_login: Login attribute
* field_attr_mail: Email attribute
* field_auth_source: Authentication mode
* field_comments_sorting: Display comments
* field_content: Content
* field_downloads: Downloads
* field_editable: Editable
* field_hide_mail: Hide my email address
* field_is_filter: Used as a filter
* field_is_in_roadmap: Issues displayed in roadmap
* field_max_length: Maximum length
* field_min_length: Minimum length
* field_possible_values: Possible values
* field_redirect_existing_links: Redirect existing links
* field_regexp: Regular expression
* field_role: Role
* field_searchable: Searchable
* field_time_zone: Time zone
* field_warn_on_leaving_unsaved: "Warn me when leaving a page with
* unsaved text"
* field_visible: Visible
* field_summary: Summary

**Now translated via -> <model>.model_name.human **
And moved from field_<something> to activerecord.models.<model>

* label_board: Forum
* label_user: User
* label_version: Version
* label_tracker: Tracker
* label_role: Role
* label_member: Member
* label_document: Document
* label_issue_category: Issue category
* label_issue_status: Issue status
* label_group: Group
* label_project
* label_news: News
* label_workflow: Workflow
* label_custom_field: Custom field
* label_attachment: File
* label_comment: Comment
* label_query: Custom query
* label_wiki: Wiki

**field_<attribute>, which were converted to label_<attribute>**

* field_ui -> label_ui
* field_summary -> label_workflow_summary

**field_<attr>-Translations, which were moved to
'en.query_fields.<attr>**

* field_member_of_group: "Assignee's group"
* field_assigned_to_role: "Assignee's role"
* field_subproject: Subproject

**Removed translations**

* field_principal: Principal
* field_text: Text field
* all remaining field_<attribute> translations

**Added translations**

* setting_ui_theme: Theme
when generating the I18n Deprecation message, consider all rails3 translation definitions (even superclasses)
the subproject translation is actually an attribute of an issue
add a I18n helper method which collects all possible translations for our models attributes
adapt tests to new translations
update translations in model/view/controller/helper for issues
update translations in model/view/controller/helper for time_entries
Update lib/redmine.rb for new translation structure
:label_attachment was replaces by Attachment.model_name.human in journal_formatter/attachment.rb
fix pdf export to use new translations
TabularFormBuilder can now handle human_attribute_name translations
let the JournalFormatter use the new Rails3 translation style
CustomFieldFormats may now use Procs for their label
update en.yml translations: repositories alsow have login, and password attributes
The ReportsController has a member header, which was accidentally translated as 'User'
csv export of time_entries may now translate its headers with a precomputed String, instead of Symbols only
use new translations in settings_helper, slightly refactor its administration_settings_tag function