Embedded contact homology