Control grease pencil keyframes with a slider, like a shape key? I guess a good example for what I want is almost like a south park character and their mouths.
If I had a sphere for a head, and I wanted to draw a mouth on it with grease pencil, I'd draw 5 difference mouth shapes across 5 keyframes with the grease pencil object. Is there a way to link this to a controller or slider, that I can move up and down, to move through the keyframes for lip syncing? That way I could just include it with the character rig instead of having to redraw the mouth in every shot.
Or if I had a plane of Cartman's head and I drew his different mouth shapes as a grease pencil object, then i give it to an animator so they can just use the slider to go through the mouth shapes and keyframe that slider.
Same could be done with eyes for example. Instead of making a layered rig with bones, if I could just draw the eye open, closed and maybe squinting and connect that to a controller that slides through each keyframe for each eye shape that would be what I want.
Hopefully that makes sense, I cant find anything related to this or it is  hard to find the right keywords to search. Do I need to write some python script for it?
-Jason
that is something you can do in Blender and it's the method we use.
Here's a quick tutorial,

Draw all your frames on a grease pencil object
In the modifiers tab add a time offset modifier and set it to Fixed Frame. The frame number will be the frame selected/shown on screen.
Use a driver to control which frame to show by right clicking the frame number and clicking add driver. Here you'll have to tweak settings dependent on your bone size and desired Active area. We generally use the distance operator ie, when the selector bone touches the smile bone it shows a smile.

Thanks
Matt