parser xml NEW rpc/action parsing

Also LYS_RPC added as a separate type.
diff --git a/src/tree_schema_helpers.c b/src/tree_schema_helpers.c
index b19990f..255e512 100644
--- a/src/tree_schema_helpers.c
+++ b/src/tree_schema_helpers.c
@@ -95,7 +95,7 @@
             ret = lys_set_implemented_internal((struct lys_module*)mod, 2);
             LY_CHECK_RET(ret);
         }
-        if (context_node && context_node->nodetype == LYS_ACTION) {
+        if (context_node && (context_node->nodetype & (LYS_RPC | LYS_ACTION))) {
             /* move through input/output manually */
             if (!ly_strncmp("input", name, name_len)) {
                 (*result_flag) |= LYSC_OPT_RPC_INPUT;
@@ -1103,8 +1103,10 @@
         return "anydata";
     case LYS_CASE:
         return "case";
+    case LYS_RPC:
+        return "RPC";
     case LYS_ACTION:
-        return "RPC/action";
+        return "action";
     case LYS_NOTIF:
         return "notification";
     case LYS_USES:
@@ -1171,6 +1173,7 @@
         return ((struct lysp_node_list*)node)->typedefs;
     case LYS_GROUPING:
         return ((struct lysp_grp*)node)->typedefs;
+    case LYS_RPC:
     case LYS_ACTION:
         return ((struct lysp_action*)node)->typedefs;
     case LYS_INOUT:
@@ -1192,6 +1195,7 @@
         return ((struct lysp_node_list*)node)->groupings;
     case LYS_GROUPING:
         return ((struct lysp_grp*)node)->groupings;
+    case LYS_RPC:
     case LYS_ACTION:
         return ((struct lysp_action*)node)->groupings;
     case LYS_INOUT:
@@ -1375,6 +1379,7 @@
         return &((struct lysc_node_case*)node)->child;
     case LYS_LIST:
         return &((struct lysc_node_list*)node)->child;
+    case LYS_RPC:
     case LYS_ACTION:
         if (flags & LYS_CONFIG_R) {
             return &((struct lysc_action*)node)->output.data;