Added HP provider

Need to work on callbacks. Will break that pretty inheritance
unfortunately.