* Init commit
* Make executor use ProgramDescBind
* Change Attribute from BlockDesc to BlockDescBind
* Since we will get the program desc in RNN, just BlockDesc is not
enough.
* Implement FC layer with helper
* Update LayerHelper
* Add debug string for Python ProtoBuf
and Rename `Sync` to `Flush`
* Add check of ProtoBuf initialization
* Layer wrapper for FC
* Fix unittest
* Fix CI
* Add code generator
* AttributeChecker Better error log and speicalize bool
Since lots of types can be cast to bool
* Complete mlp, fit_a_line
* Implementation of simple conv_2d layer
* Fix bugs
* Change ProgramDesc not a global variable
* Polish code style
* Stash
* Correct implement BlockDesc destructor
* Correct implement BlockDesc destructor
* Unify program as parameter name
* Fix bugs
* Add unittest
* Fix unit test error
* Remove unused functions
* Add clone for Python Program
* Compare OpDescBind directly
* Implement FC layer with helper
* Update LayerHelper
* Add debug string for Python ProtoBuf
and Rename `Sync` to `Flush`
* Add check of ProtoBuf initialization
* Layer wrapper for FC
* Fix unittest
* Fix CI
* Add code generator
* AttributeChecker Better error log and speicalize bool
Since lots of types can be cast to bool
* Complete mlp, fit_a_line
* Implementation of simple conv_2d layer
* Fix bugs
* Correct implement BlockDesc destructor
* Fix bugs
* Fix unit test error
* Follow comments