TCP_NODELAY is a bit of deprecated samba voodoo for operating systems without a proper kernel. Note that statement does not imply that TCP_NODELAY is unnecessary under Fedora. :)
FreeNAS has ZFS, which supports nfsv4 ACLs. This means that permissions work almost exactly as they should under windows. No need to mess with "valid users" parameters. No need to jump through hoops using 'force user' parameters, setting groupmasks, etc. Just right-click on the share and edit NTFS permissions like you would any share on a Windows server. It's pretty awesome.
That being said, you should not mess with "create mask" or "directory mask". Leave them as defaults (0666 and 0777 respectively). The smb4. conf parameter "nt acl support" is enabled by default and when combined with the zfsacl VFS module can cause bad things to happen if you start doing "chmod" operations willy-nilly.
With Samba4 you can set up your server as an AD DC, but it is best practice to not have the same Samba4 instance running as a DC and a file server. If needed you could probably run the DC instance in a jail on your FreeNAS install. Recreating your 'homes' directories under an AD domain can be achieved by following most of the steps here:
https://wiki.samba.org/index.php/Setting_up_a_home_share with the caveat that you should use the FreeNAS webgui tools to create the shares and not edit your share access controls through the "share permissions" tab in compmgmt.msc.
BTW, it is best practice to create groups and use them with the "valid users" and "write list" parameters if you decide to go that route.
e.g.
valid users = @PeopleIHate @PeopleILike
write list = @PeopleILike