move adapters and serializers to separate files
use es6 module transpiler syntax to define objects
all the missing semicolons