added Array.prototype.first and .last methods from es-discussion