Merge remote-tracking branch 'weave/master' into merge-aosp-master This merge includes the following commits: 52d006a Support GCC 4.7 7125e8b Enable big-endian build 6f7385f Add gomacc.lock and make files generated by gyp into .gitignore 9e9aca9 Remove dependency on ninja-build 9e78026 Add big-endian defines into base/build/build_config.h 42b0a7b Make sure example command definitions include 'minimalRole' 42d63b9 Fix example command schema to match the expectations of the server 8a05beb Remove object schema type system c430560 Replace Get* methods returning unique_ptr with reference alternative 3bfb13d Fix GCC 4.7 errors f21c83a Change XMPP notification tag from 'clouddevices' to 'weave' 2c7740a Remove CommandDefinition class 41429d8 commands: fix unused-function warning 8fb4e62 Added clang-format config f08caeb Extract privet::AuthManager from privet::SecurityManager 3c2b303 Add fake component/trait property to device draft b0efd87 Fixed grammar error 88f55d8 Add "component" property to command instance 739e357 Make Split() function work consistently with empty strings 44c1dbe Add ComponentManager class to handle device traits/components 05a979e Update light command definitions 6869ed7 Change StateChangeQueue::NotifyPropertiesUpdated to take const ref 7b588fc Add support for state updates on ComponentManager 88e9d12 Move deprecated APIs on Device object to the end of the interface e79fa91 Add new component-based APIs to Device interface a3c5e6d Route commands without path to suitable component ba98115 Convert ComponentManager into an interface and create a mock b736c98 Make CommandManager::AddCommand() usable for both cloud and local cases 6b394d1 Add support for legacy state/commandDefs to ComponentManager d91d625 Switch to use ComponentManager for traits/components 894b6b4 commands: delete obsolete include 321dae6 Allow change of model manifest id 29a11ca Replace IsEqualJson gtest predicate with EXPECT_JSON_EQ 551a82b Add support of Components/Traits to local privet APIs f969132 Use uint64_t for fingerprints to prevent easy overflows e3cc230 Move checkForUpdates tests into their own section 78d4f6d Move local device_id into public settings section 6a9d0e2 Fixed name of constant in unit test a580328 Add config flag to mark that local auth info was changed 1a10871 Remove output error parameter from BuildDeviceResource 7717d93 Support HTTP responses with no body d6db049 Update example daemons to use the new component/trait APIs 45dc9df Add macaroone implementation from https://weave.googlesource.com/weave/libuweave 47fe6f8 Add macaroone implementation into libweave build 972282c Fix compile error on Brillo f1fa8be Move build_config.h from chromium/base/build to chromium/base 2033433 Fix a crash when adding a default command handler Change-Id: Ic0b50041ba7852581a86e5af9118cfffd9cca302