Fixed and finished a few methods; should be working now, but I have not tested for bugs yet