adding a codes definition header and moving things around