This will start up as an access point the first time so that you can connect to it directly. Hit the webserver at 192.168.4.1 and then you can input your ssid and password. These will be written to EEPROM for later use. I also added a modified version of the webserver that comes with the ArduinoIDE to decrease the HTTP_MAX_DATA_WAIT and HTTP_MAX_CLOSE_WAIT. This made my server go from responding to a page ever 500ms-2000ms down to serving all the HTML, AJAX calls, JS files, and CSS files in a fraction of a second.
https://github.com/jpswensen/ESP8266_WebGen
Let me know what you think. Still rough around the edges, but it works.