added a few methods, fixed some minor issues