updates to cmake and structure mostly