Made some very large changes. Seperated functionality into different items.