Design of Multi-layer Neural Networks with powers-of-two weights