There is not, alas, any standard definition of a term like “Full Moon” beyond its being the moment when the Moon is completely full. This means that, technically, there is only one exact infinitely small moment when the Moon is completely full, and therefore that any real moment about which you could ask PyEphem will be either before or after that perfect moment of fullness.
So unless you can find a standard definition for how “wide” in seconds the moment of Full Moon is, the actual phase at any given second that you ask about will be either waxing or waning. You can consult the USNO definitions for all the details:
http://aa.usno.navy.mil/faq/docs/moon_phases.php
Since the standards there say that the difference in ecliptic longitude is how you determine the phase, you might try something like this:
import ephem
tau = 2.0 * ephem.pi
sun = ephem.Sun()
moon = ephem.Moon()
names = ['Waxing Crescent', 'Waxing Gibbous',
'Waning Gibbous', 'Waning Crescent']
for n in range(1, 31):
s = '2014/%d/11' % n
sun.compute(s)
moon.compute(s)
sunlon = ephem.Ecliptic(sun).lon
moonlon = ephem.Ecliptic(moon).lon
angle = (moonlon - sunlon) % tau
quarter = int(angle * 4.0 // tau)
print n, names[quarter]