Added compass support and changed tokens to just accept a data string