abstracted BuildManager elements into separate files and fixed Rust builder