Two fixes for changes in rust and in serialize crate.

Have a fix for breaking change introduce in rust commit ddb2466 which
now parses `macro!()` and `macro![]` as expressions if not followed by a
semi-colon.

Also fixed a change in the Serialize crate resulting in FnMut being used
instead of FnOnce.

Signed-off-by: JP-Ellis <coujellis@gmail.com>