clean up templates; get requires method stuff correct