Branch: master

       Updated implementation to link a user with another one using the Mquest
       accept link sent via email by the former.

       Also added implementation to Delink already linked users.

============= Added (4)

      /app/views/mquests/_legends.html.haml
      /app/views/mquests/_users.html.haml
      /app/assets/stylesheets/custom_styles.css
      /app/views/users/_mquest_token.html.haml

============= Updated (12)

      /app/views/layouts/_top_navigation.html.haml
        - Added beside Logout link the current logged in user name.

      /config/locales/en.yml
        - Removed following:
            already_mquested: "Mquested"
          from user.mquests

        - Added following:
            users: "Users"

            legends:
              title: "Mquest Legends"
              sent_mquest: "=>"
              sent_mquest_title: "User has already sent you an Mquest"
              received_mquest: "<="
              received_mquest_title: "User has been already sent an Mquest from you"
              be_mentor_title: "For becoming a mentor"
              be_mentor: "Mntr"
              be_mentee_title: "For becoming a mentee"
              be_mentee: "Mntee"
              remquest_title: "Re-Mquest"
              remquest: "=>=>"

          under user.mquests

        - Added following
              invalid_role: "Could not mquest.Role %{role} specified in request URL is invalid."
              mquest_token_not_received: "Could not process Mquest accept request.No token received."
              mquest_token_invalid: "The Mquest is found as invalid and cannot be accepted."
              unauthorized_mquest_accept_request: "You are unauthorized to accept the Mquest."
          under user.mquests.errors

        - Added following
              mentor_mentee_connection:
                messages:
                  success: "You are now a #{role} to #{user_name}"
                  failure: "Could not make you %{role} to %{user_name}"
               delink:
                  title: "Delink"
                  errors:
                    could_not_process_delink: "Could not process delink request.Either or all required data[id, role, from] found missing."
                    no_user_found: "Could not process delink request.Either or both of the users specified by id %{user_id}, %{from_user_id} not found in the system"
                    invalid_role: "Could not process delink request.Role %{role} specified in request URL is invalid."
                  messages:
                    success: "Successfully delinked %{user_name} from %{from_user_name} as %{role}"
                    not_linked: "%{user_name} found not linked with %{from_user_name} as %{role}"
          under user

        - Added following
            sign_in_to_accept: "Please sign-in %{receiver_name} to accept the Mquest sent by %{sender_name}"
          under user.mquests.messages

      /app/views/mquests/index.html.haml
        - Re-factored code by moving out to newly added partials mentioned above
          under Added section.
        - Added legends and displaying information to logged in user about a mquest already sent
          by him to a user or a user has sent him an mquest or the user is
          his mentor or his mentee.Also allowing him to remove connection
          from a user.

      /config/routes.rb
        - Added following route:
            match "/mquest/:token/accept" => "mquests#accept", via: :get, as: :accept_mquest

        - Added following
            post "delink/:from" => "users#delink", as: :delink
          to resources :users member routes.

      /app/mailers/user_mailer.rb
        - Updated implementation in method: mquest_email(mquest)
          Added @mquest_token = mquest.token

      /app/views/user_mailer/mquest_email.html.haml
        - Updated the Mquest Accept Link path

      /app/controllers/mquests_controller.rb
        - Added method: accept

      /app/controllers/application_controller.rb
        - Updated implementation in method: require_user
          Added token: params[:token]) to root_path as query param if former is
          available.This token will be used, when user is not logged in, to
          show him a message that you need to login to accept the Mquest.

        - Updated implementation in method: after_sign_in_path_for(resource)
          If a mquest token is found in request, then user should be redirected
          to accept_mquest route.

        - Added method: valid_role?(role)

      /app/controllers/users_controller.rb
        - Added private method: set_mquest_details
        - Updated implementation in method: welcome
          Added invocation to set_mquest_details

        - Added method: delink

      /app/views/users/sessions/new.html.haml
        - Added following code:
            = render partial: "users/mquest_token"

      /app/models/user.rb
        - Added following non-persistent attribute:
             attr_accessor :mquest_token
          Used when Mquest accept requests are received and user is asked to
          sign-in, if not signed-in.

        - Fixed mentors and mentees relationship with User.The :through option
          values were swapped with each other resulting in returning incorrect data.
          Fixed Code:

            has_many :mentors, through: :mentee_connections
            has_many :mentees, through: :mentor_connections

      /app/views/users/welcome.html.haml
        - Added following code:
            - if @message
              %p= @message
          to render the Mquest accept welcome message if available.