Updating EAL to support more than just graphics

I've decided to update EAL to be a more versitile library.