Fix a struct being forward declared as class

Also add PP++ as a dependency of P++ and add a FastRealease target to
PP++ in the Visual solution