Learning Binary Ninja for Reverse Engineering - Workflows, UI Patching and Scripting