Copyright (C) 2007, 2008, 2009, 2010, 2011
David Aguilar <davvid@gmail.com> and contributors
