(T25) Refactoring: replace PersoRequest::get_ship by Ship::get

Summary:
Reefactor PersoRequest get ship code

Allowing Ship::get($data) to accept ship id (1) or code (S00001)

Test Plan: a manual API auth test

Reviewers: dereckson

Reviewed By: dereckson

Maniphest Tasks: T25

Differential Revision: http://code.zed.dereckson.be/D2
(bug T83) If the Perso class is instancied with an non existent perso_id, application dies.

Summary:
This fix the following bug:
A perso externally deleted but still logged in can still use the site under the old perso_id.

Test Plan: Tested reproducing the scenario in T83.

Reviewers: dereckson

Reviewed By: dereckson

Maniphest Tasks: T83

Differential Revision: http://code.zed.dereckson.be/D6
[Dev] We now use Git, not Mercurial.

Summary: Edit dev documentation index.

Test Plan: documentation change has been proofed on browser page review

Reviewers: dereckson

Reviewed By: dereckson

Differential Revision: http://code.zed.dereckson.be/D7
Geo library proofing

Summary:

- Documenting default value of 6 for the counf parameter of the method
  GeoPointPolarZ::calculate_section($angle, $count)

- Tables were hardcoded in GeoPlace model class' SQL queries

Test Plan: Trivial edits

Reviewers: dereckson

Reviewed By: dereckson

Differential Revision: http://code.zed.dereckson.be/D8
Documentation fix: port class → profile class
Refactoring OpenID storage code in more generic auth code

[MySQL schema change]

* The users_OpenID table become users_auth.
* This new users_auth table can contain OpenID or other auth mechanisms
  (we plan to add include YubiKey authentication).
* Field new names:
  - openid_id  -> auth_id
  - openid_url -> auth_identity
* New fields:
  - auth_type (contains 'OpenID' for OpenID stuff)
  - auth_properties, currently NULL
    For configurable auth methods, can contains serialized properties

[Code change]
- Login code, settings XML file and User class updated to reflect changes
- Config change: dropped TABLE_USERS_OPENID, added TABLE_USERS_AUTH

[Misc]
- Adding cached OpenID files to .gitignore
- Cleaning extra whitespaces in code files
[Dev]
- autoload scripts now parses only includes/
- autoload script now handles interfaces
- fixing whitespace issue
- autoload.php reload
- Refactored the authentication mechanism
    New interface to create an authentication method:
     * IAuthentication
    New classes:
     * UserPasswordAuthentication
     * YubiCloudAuthentication (see below)

- Implemented YubiKey authentication
    In user_athentication table, uses:
      * auth_type ....... YubiKey
      * auth_identity ... the public YubiKey identity

We've the start of an auth library for Keruald.
BeautyXML: fixing notice on empty XML node