fixed object type annotations

Summary:
Fixed object type annotations to match those in TypeScript, of the form
{prop1:type1 semicolon ... propN:typeN semicolon}
where semicolon = ; | virtual_semicolon

Test Plan:
make tests
(extended a unit test)

Reviewers: pad

Reviewed By: pad

CC: bhosmer, bryano

Differential Revision: https://phabricator.fb.com/D1216201