Event Related Potential Recording: Software techniques for Visual Stimulation, Communication and Performance Monitoring