Trying to redo the whole thing; I think it's a bit disorganized