Merge in changes by Francois Ferrand (typz) to implement KeyPassHttp protocol

There were some merge failures I have yet to review so I doubt the code in this commit will be functional