Revamp doc structure, update Core API