Closes #277. Cores files intentionally left out of the commit as they require a different approach and have a different history