radio: Refactoring API

close #173