Added some 2D functions. Still need to figure out details about initialization