`m.top` is part of object creation managed by BrightScript/RSG such that anything put into (or made as an entry/attribute/field/property w/e you want to call it) `m.top` automatically becomes part of the objects public scope and thus m.top will allow external agents access to read/edit and possibly expose implementation details of said object.
Yes though one point is that you can't just put anything into top; being that top is a node, you can append children nodes to it (that would usually cause something to show up on screen) or set fields on it, setting fields isn't automagic, the field has to be defined in component's interface fields or added with addField (or be a default field on node such as "id").
It's important to understand the difference between the types "node" and "associative array".; m is the latter and you can just put anything onto it, m.top is the former and has fields and child nodes.