Keflezighi top American in NYC Marathon