Merged /server/ from Mayyan's branch.