The easiest way is just to run M-x list-packages, find magit (use C-s to search just like any other buffer). With the cursor on the Magit line, type i to mark the package for installation, then x to execute. It will install Magit plus all of its dependencies automatically.
Or you could search for transient and mark it for installation if you really wanted to....
--first-parent is included in current versions of Magit, but at a higher level than is shown by default in the transient menus.
Refer to C-hig (transient)Enabling and Disabling Suffixes for how to control this.
From the Magit Log menu you can either:
Change the default level for that menu using C-x l C-x l to make all those hidden options visible.
Any commit/patch/diff could be opened in diff-mode. Then M-x diff-apply-hunk to apply hunk. C-u M-x diff-apply-hunk to undo hunk.
Actually, you don't need switch to diff-mode from magit-revision-mode at all, simple diff-apply-hunk is enough.
If you use smex or counsel-M-x from counsel, when you type M-x ...
If you make the status buffer editable (M-x read-only-mode), you actually can edit it. Note, though, that this edits only the magit status buffer, and not the underlying file, and this is generally very hacky and it's easy to break the status buffer this way.
However, this can still be useful because you can then perform git operations on the edited diffs - ...