Rework all things shared. Will have to rewrite some of the test