fix open mode
add O_DIRECTORY flag
add Socket and use O_DIRECTORY flag in Directory
fix value iterator
add socket module