Deleted for now as I've realized it won't be done properly until later.