Updated and added some documentation to README. Updated index to be a bit mroe generic and made the listener argument optional.