Though the homemade PCB worked flawlessly, I redesigned the board using surface mount components and with the ability to sit completely under the board instead of poking out the top (though it can be situated either way depending on how the headers are soldered). When I was satisfied with the design, I had a few made through EasyEDA. A week or so, and a bit of soldering, later, and these are the results:
I have a handful of extra boards, and the components, if anyone is interested in them. I'm happy to share the Eagle I used for production as well if there is interest in having it made yourself. Feel free to contact me.
How it Works
Looking for the ability to control an LCD from Arduino without having to use 12 pins? I designed a breakout board featuring a 74HC595 shift register and an NPN transistor with the ability to control the display (including backlight control) with either 4 wires allowing control of contrast through code, or 3 wires allowing the addition of a potentiometer for static contrast. If controlling contrast via code, the included modified LiquidCrystal library adds fade_in(), fade_out(), and highlight() functions. In addition lcd.backlight() and lcd.no_backlight() will control whether the backlight is active or not.
The project was recreated in Fritzing showing a breadboard diagram, schematic, and recreation of EAGLE PCB design used in my case.