I think we definitely can/need to improve this... In my opinion it would be nice to separate request builder logic from the actual request execution logic (a we discussed today)