A Stream Function Solver for Liquid Simulations