Refactor package structure a little
Add primitive primitive key management