Patches pushed as 0195d9041a5f440a7e2e14b39e98f596fddf0c12 and following with a few modifications. Thanks.