So after more research, I finally figured out exactly what the problem is. It's not exactly permissions. It seems to be a bug with bumblebee. (Currently working on it)
The best way I can demonstrate it is to tell you to set up a printer with the printcore driver, with a serial port like /dev/ttyFun or something. When booting, bumblebee will report it doesn't exist. If you go edit the config.json file, to change it to a dummy driver, and remove the port and baud lines, it'll still complain when you run the software that the port isn't found. Note, that you may have to run it once with the dummy driver with the port and baud lines still there for this to take effect.
Basically, from what I can tell, it's retaining the port information when it shouldn't be. It seems to be reading the config file each time, so I don't know if it caches it or what. Either way, if you run the test above, and it works correctly again, the other problem should be fixed too.