I see you followed the official arduino mega design in that you don't breakout 16 of the I/O pins, is there a reason you did that?
The main reason is to follow the Arduino standard but it is also a design issue. I can't see any reson to have more than 64 i/o on this small breadboard.
I understand that, but I'm always somewhat disappointed when a module/board supplier doesn't allow the user access to a chips full complement of features. I understand that design decisions almost always have to make trade-off decisions at times, however I will usually pick the design that allow full access, as when I selected the Seeeduino mega1280 board over the original arduino mega1280 board for just that reason.