support soft delete topic
report function require user level
add topic status and defined global scope for all topic queries using status = "public" by default, also provided withProtected and onlyProtected methods.