Build what you need
"but it seemed that you could only bash a byte at a time between the two processors. If I ever find an FPGA dev board that shares RAM with a "regular" CPU (ARM/Intel), I'd love it."
FPGA's don't have "interfaces" per se. The point of an FPGA is that you have hardware inside and you create your own specific hardware from that. So if you want to use an FPGA with an ARM cpu, decide what interface you want to use and then implement that in the FPGA. If you want to use shared RAM then fine, most FPGA's inlcude memory so you then need to implement your shared access in the FPGA hardware and handle address collisions etc. For those coming from a software environment, VHDL and Verilog can be a strange concept. It's not a program, unless specified there is no flow, and everything can have the potential to happen simultaneously.